Journals don't load after update in Linux operacional system

We are a problem with our ojs before an update on operational system to requirements for another application (it was add php5-readline from dotdeb). But after this, the journal are not loaded, and after login show to us only a blank page.

The log returned:

[Tue May 17 06:25:08 2016] [error] [client 118.97.244.121] ojs2 has produced an error\n
Message: WARNING: date(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘America/Sao_Paulo’ for ‘BRT/-3,0/no DST’ instead\n
In file: /var/www/revistas/pages/search/SearchHandler.inc.php\n
At line: 92\n Stacktrace: \n
File: (unknown) line (unknown)\n
Function: PKPApplication->errorHandler(2, “date(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘America/Sao_Paulo’ for ‘BRT/-3,0/no DST’ instead”, “/var/www/revistas/pages/search/SearchHandler.inc.php”, 92, Array(16))\n
File: /var/www/revistas/pages/search/SearchHandler.inc.php line 92\n
Function: date(“Y-m-d H:i:s”, 1296698400)\n
File: /var/www/revistas/pages/search/SearchHandler.inc.php line 153\n
Function: SearchHandler->_assignSearchFilters(Object(Request), Object(TemplateManager), Array(15))\n
File: (unknown) line (unknown)\n
Function: SearchHandler->search(Array(0), Object(Request))\n
File: /var/www/revistas/lib/pkp/classes/core/PKPRouter.inc.php line 362\n
Function: call_user_func(Array(2), Array(0), Object(Request))\n
File: /var/www/revistas/lib/pkp/classes/core/PKPPageRouter.inc.php line 220\n
Function: PKPRouter->_authorizeInitializeAndCallRequest(Array(2), Object(Request), Array(0), False)\n
File: /var/www/revistas/lib/pkp/classes/core/Dispatcher.inc.php line 134\n
Function: PKPPageRouter->route(Object(Request))\n
File: /var/www/revistas/lib/pkp/classes/core/PKPApplication.inc.php line 178\n
Function: Dispatcher->dispatch(Object(Request))\n
File: /var/www/revistas/index.php line 70\n
Function: PKPApplication->execute()\n
Server info:\n
OS: Linux\n
PHP Version: 5.3.29-1~dotdeb.0\n
Apache Version: Apache/2.2.16 (Debian)\n
DB Driver: postgres\n
DB server version: PostgreSQL 9.2.4 on x86_64-unknown-linux-gnu, compiled by gcc-4.4.real (Debian 4.4.5-8) 4.4.5, 64-bit, referer: http://revistas.unicentro.br:80/

You can eliminate this message by setting your timezone in php.ini (or .htaccess). This message, however, is not what is causing the blank page. There will be another line in the error log which references a “FATAL” error.

Could do an error with postgres php driver or something related with sessions on Apache? With debug on, when I tried access “user page”, ojs returned:

(postgres7): SELECT * FROM sessions WHERE session_id = ? [ (0=>'n6ru98d1k533q288vffkpd8vh5') ] (postgres7): SELECT * FROM users WHERE user_id = ? [ (0=>'1') ] (postgres7): SELECT * FROM user_settings WHERE user_id = ? [ (0=>'1') ] (postgres7): SELECT * FROM site (postgres7): SELECT v.* FROM versions v LEFT JOIN plugin_settings ps ON lower(v.product_class_name) = ps.plugin_name AND ps.setting_name = 'enabled' AND ((journal_id = ?) OR v.sitewide = 1) WHERE v.current = 1 AND (ps.setting_value = '1' OR v.lazy_load <> 1) [ (journal=>'0') ] (postgres7): SELECT last_run FROM scheduled_tasks WHERE class_name = ? [ (0=>'plugins.generic.pln.classes.tasks.Depositor') ] (postgres7): select version() (postgres7): SELECT last_run FROM scheduled_tasks WHERE class_name = ? [ (0=>'plugins.generic.usageStats.UsageStatsLoader') ] (postgres7): SELECT last_run FROM scheduled_tasks WHERE class_name = ? [ (0=>'plugins.importexport.crossref.CrossrefInfoSender') ] (postgres7): SELECT last_run FROM scheduled_tasks WHERE class_name = ? [ (0=>'plugins.importexport.crossref.CrossrefInfoSender') ] (postgres7): SELECT last_run FROM scheduled_tasks WHERE class_name = ? [ (0=>'plugins.importexport.crossref.CrossrefInfoSender') ] (postgres7): SELECT last_run FROM scheduled_tasks WHERE class_name = ? [ (0=>'classes.tasks.ReviewReminder') ] (postgres7): SELECT last_run FROM scheduled_tasks WHERE class_name = ? [ (0=>'classes.tasks.SubscriptionExpiryReminder') ] (postgres7): SELECT last_run FROM scheduled_tasks WHERE class_name = ? [ (0=>'classes.tasks.OpenAccessNotification') ] (postgres7): SELECT * FROM roles WHERE user_id = ? ORDER BY journal_id [ (0=>'1') ] (postgres7): SELECT j.* FROM journals j ORDER BY j.seq (postgres7): UPDATE sessions SET user_id = ?, ip_address = ?, user_agent = ?, created = ?, last_used = ?, remember = ?, data = ?, domain = ? WHERE session_id = ? [ (0=>'1') (1=>'10.10.0.124') (2=>'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:46.0) Gecko/20100101 Fire...') (3=>'1463416659') (4=>'1463495167') (5=>'0') (6=>'') (7=>'revistas.unicentro.br') (8=>'n6ru98d1k533q288vffkpd8vh5') ]

Debug will output each SQL query, so this extra noise is expected. It looks to me like these queries are succeeding, as I don’t see any associated error messages.

You probably just want display_errors and show_stacktrace turned on.

Thank you ctgraham. Would you have some tip that it could help find out the problem? Maybe a reinstall of PHP or OJS?

I think you’re already headed in the right direction. If you cleanup the noise in your error log by setting the system timezone and turning debug off and display_errors on, you should be left with a line that starts, “PHP Fatal …”. This will point you to the actual problem.

I didn’t have a return understandable :confused: :

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE in /var/www/revistas/cache/fc-journalSettings-37.php on line 334

That is a cache file that is apparently malformed. Take a look at it to confirm that it doesn’t look like someone tried something malicious, then try deleting it - it will be recreated as needed.