Error 500 when upgrading from OJS 2.4.8 to OJS 3.1

Hello,
I’m perfroming an upgrade from 2.4.8 to 3.1.
I’m doing it in a test server, where I replicated the live installatiion
My upgrade procedure included the following steps:

  1. Deleted all files, but /public and /files
  2. Uploaded new OJS 3.1.0-1 files
  3. Adjusted config.inc.php so it matched live site configuration (except for those path-relative parametres) and with installed set to “Off”
  4. Imported the 2.4.8 database
  5. Access site installation url to start a web-based upgrade procedure

However, when accessing the url, I get a HTTP 500 error.
(I also tried with a default 3.1.0-1 config.inc.php file, but also get the same error)

Don’t know if this a server issue

Can you advise me on this problem please?

Thanks in advance for your help.

Regards,
Juan

Hi @jascanio

Error 500 is related a internal server error or something that your server is not getting handle. Please take a look in your php error log and check what file is triggering error 500.

An option to upgrade would be attempt a terminal approach with command:
$ php tools/upgrade.php upgrade

Read further about it in this link: https://pkp.sfu.ca/ojs/UPGRADE

Regards,
Israel Cefrin
Public Knowledge Project Team

Hi @israel.cefrin
Thanks for your reply.
I can only access my OJS installation by FTP and web.

Sys admin people says they see the following:

Apache-Error: [file "mod_suphp.c"] [line 59] [level 3] PHP Parse error: syntax
error, unexpected '[' in
/home/ull.es/27/ojsullpre/webpages/ojs/lib/pkp/lib/vendor/nikic/fast-route/src/functions.php
on line 12

Any advice?

Thanks in advance for your help.
Regards,
Juan

Hi @jascanio

In this line Apache-Error: [file "mod_suphp.c"]
It looks like you have a deprecated PHP module in your server, please see here:
https://www.suphp.org/Home.html

Talk with your sysadmin how to use a workaround like PHP-FPM.

Regards,
Israel Cefrin
Public Knowledge Project Team

Hi @israel.cefrin,
Thanks for your reply.
I’ve e-mailed sysadmin and am awaiting their response.
In the meantime and, just in case this helps, I remember having installed an OJS 3.0.1 test site into this server, which would run with no problems.
Is 3.1 more demanding in terms of PHP versions?
Thanks in advance for your help.
Regards,
Juan Ascanio

Hi @jascanio

OJS 3.1 requires PHP version 5.6 at least, you may check system requirements in this link:
https://pkp.sfu.ca/ojs/ojs_download/

Regards,
Israel Cefrin
Public Knowledge Project Team

Hi @israel.cefrin,
Thanks for your reply.
I see system requirements in the url provided. Which I’m not quite clear about is whereas these only apply to 3.1 and above or not.
I ran a 3.0.1 in this server with no apparent problems.
Does the system requirements apply only to 3.1 and above?
Thanks in advance for your help.
Regards,
Juan

Hi @jascanio

Those system requirements apply to all OJS 3.x versions, including 3.0.1.

Regards,
Israel Cefrin
Public Knowledge Project Team

Hi @israel.cefrin
Thanks again

Can you find an explanation to why a 3.0.1 would run, but not a 3.1?
Is that particular deprecated PHP module you mentioned which is making the difference?

Regards,
Juan

Hi @jascanio

Most likely, yes.

You can see difference between mod_php and PHP-FPM in this link:
https://serverfault.com/questions/645755/differences-and-dis-advanages-between-fast-cgi-cgi-mod-php-suphp-php-fpm

Support and run OJS3.1 with PHP-FPM is a logical choice to avoid crashing an application because this way PHP runs like a server which your web server (E.g. Apache, Nginx) just connects to it, and your app/site/journal will not depend on a exclusive Apache module (you will be able to change your webserver software if you want).

Regards,
Israel Cefrin
Public Knowledge Project Team

Hi @israel.cefrin,
Ok. Thanks for all your help and info!
Regards,
Juan