eZ Community » Forums » Install & configuration » Class 'ezcBaseOptions' not found
expandshrink

Class 'ezcBaseOptions' not found

Class 'ezcBaseOptions' not found

Friday 09 January 2015 6:19:28 pm - 8 replies

Hi to all,

Yes I know there are several topics with this kind of subject, but my problem seems to be a bit different.

I've got a development web site on a linux server configure for my website. Ok this one work fine,

I'm hosting my server on a the Amen.fr web hosting wich will be my production server (I have to mention that this is not a dedicated server).

I transfered all the files from the dev to prod server ( the database as well ), changing some settings in site.ini.append (specially database access and URLs), and my prod's server give my an internal server error....

Ok, I comment the above rewriteRule in the .htacces :

#RewriteRule .* index.php

My website now give me this fatal error :

Fatal error: Class 'ezcBaseOptions' not found in /htdocs/public/www/kernel/private/options/ezpextensionoptions.php on line 58

Ok I guess it came from a PATH configuration, but I don't understand what's wrong. I do not understand why I need ezcomponent on the prod's server and not in the dev's.

I forget : I don't have any SSH access on the prod's server, so I have some difficultys to clear caches or regenerat autoload array from command line.

If someone have seen this error before, your help is welcome.

Regards,

Alex.

Saturday 10 January 2015 10:06:54 am

Hello Peretjatko,

It seem your having a number of problems which are made more frustrating with your limited production hosting environment.

I for one would not host an eZ Publish site with such a limited environment it's just not a good choice when there are so many alternatives available. That said ...

First question I have is what release version of eZ Publish are you using? Second would be are you using a pure legacy setup or do you also use new stack?

I would next verify by hand that the class ezcBaseOptions has been properly uploaded to your production server. Right now it sure sounds like this aspect of your production setup is missing, meaning zetacomponents is not properly installed and available to eZ Publish. 

I think how you setup the production webserver code is incorrect which is why it works locally in dev env but not on production.

In the distant past zetacomponents was bundled with eZ Publish releases which made things a little simpler for users using hosting without ssh. Today zetacomponents must be installed using composer.

It sure sounds like your using a current version of eZ Publish but have not uploaded the entire (all of the) release files + files installed by composer to the server. We have found other users have made this mistake recently as well since the switch to fetch zetacomponents via composer was made to eZ Publish.

This is most commonly because the zetacomponents are stored in the 'vendor' directory and most people think they only need to upload the ezpublish_legacy directory to their production servers instead of all of the release's files and directories (post composer install / setup).

Re: https://doc.ez.no/display/EZP/Ins...basedsystem-InstallComposerYellow5.x

I hope this helps!

Cheers,
Heath

Monday 12 January 2015 11:46:21 am

Hello Heath,

Yes I know, this is a restrictive web server, but I have to deal with it as it have been bought before I start to work on sad.gif Emoticon

I don't understand your question "are you using a pure legacy setup or do you also use new stack?".

EDIT : Do you mention this page : https://doc.ez.no/pages/viewpage.action?pageId=6291674 ?

I have installed community_project-2014.07.0-gpl-full on my dev server ( decompresing all the stuff in a directory and configured my apache web server to point on XXXXXX/ezpublish5_community_project-2014.07.0-gpl-full/ezpublish_legacy directory as my DocumentRoot

... and ... yes your are right : I've only transfered on the production server the directory /ezpublish_legacy/ and his sub-directories. Do I have to transfer all the files comming with the initial ezpublish5_community_project-2014.07.0-gpl-full.tgz file ? If so, My web hoster doesn't give me the possibility to manage my DocumentRoot, so I guess I will be in trouble with the root Path of my web server...

 

By the way, something missing from my knowledges : I don't understand what other directories ( excepted /ezpublish_legacy ) stand for. Have you got a documentation I can read to know more ?

Modified on Monday 12 January 2015 12:13:51 pm by Peretjatko Alexandre

Tuesday 13 January 2015 8:20:14 am

Hello Peretjatko,

I was wondering if you were using the Symfony features or the legacy features of eZ Publish. This answer would help me in determining how best to recommend you solve your problem.

It sure sounds like your only trying to use a legacy only setup so I would recommend the following.

On your development machine perform the instructions as directed in this documentation.

https://doc.ez.no/display/EZP/Ins...mponentsforapurelegacysetupYellow5.x

Then re-upload all your source code in the development machine's ezpublish_legacy directory and test again. This should install zetacomponents within the legacy directory and solve the problem.

As for learning more about the other directories they are part of the Symfony based new stack kernel and you would be best to learn more about them by reading and learning the source code of the new kernel to better under stand them. There is no specific documentation to this affect at a directory level.

I hope this helps! 

Cheers,
Heath

Tuesday 13 January 2015 7:35:50 pm

Hello Heath,

I've done what you mentionned and composer install a "vendor" directory in ezpublish_legacy. OK

I' transfert all my source code ( from ezpublish_legacy/ ) from dev to production server, OK

But now I've got this Internal error :

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, [no address given] and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

I found nothing in log files. If I remove the rewrite rule (RewriteRule .* index.php) in the .htaccess that seems to work, but all my location are broken and I've got a 404. So I think that removing this rewrite rule is not the good solution.

Any ideas ?

Modified on Tuesday 13 January 2015 7:37:13 pm by Peretjatko Alexandre

Tuesday 13 January 2015 8:27:10 pm

Hello Peretjatko,

I agree that removing / modifying the rewrite rules is not an acceptable long term option. But if that helps you -debug- feel free.

You'll need to put on your php / apache debug hat on and debug this error on production.

I would check the apache / php error logs for more information and turn on the php directive display_errors for more information.

Because of your restricted production environment you may need to contact your hosting company for support in solving / debugging this internal server error to find out what the -real- error is ...

I hope this helps!

Cheers,
Heath 

Wednesday 14 January 2015 10:02:09 am

Hello Heath,

Regarding to some help I have from le host, my problem cames from the .htaccess_root wich I copy from dev to production server and it generate apache confusion on the production environment ...... (don't ask my why, this is the first time I see this problem ! ).

EDIT : The problem came from .htaccess-old, not .htaccess_root ( but I delete both ).

I going step by step in the right direction : I've got now my first page (index.php)  who respond correctly. But all the other URL are responding with a 404 !

For exemple if I go to : www.mydomaine.com -> Display a nice page ( login request ) OK, this is what I'm expecting.
If I go to /user/login -> 404

In my override/site.ini.append.php I've got :

[SiteSettings]

SiteURL=http://www.mydomaine.com

 

In my siteaccess/fre/site.ini.append.php, all the settings are ok for the database access ( I've chek that point )

[SiteSettings]
LoginPage=embedded
RootNodeDepth=3

I don't understand where this 404 cames from. Any suggestions ?

Cheers,

Alex.

Modified on Wednesday 14 January 2015 10:11:36 am by Peretjatko Alexandre

Wednesday 14 January 2015 10:54:53 am

Hi folks,

That's too bad : in my .htaccess a line was missing :

RewriteBase /

... and it works like a charme.

@Heath, thanks again for your help and the time you spend on my problem.

Cheers.

Alex.

Thursday 15 January 2015 11:19:29 am

Hello Peretjatko,

I'm pleased you were able to solve this issue.

Thank you for marking this thread is solved!

Cheers,
//kracker

Modified on Thursday 15 January 2015 11:20:14 am by // kracker

expandshrink

You must be logged in to post messages in this topic!

36 542 Users on board!

Forums menu

Proudly Developed with from