Hey there,
I wish to share my experience about OJS 3.3.0.8 installation on the IONOS (1and1) shared hosting specifically. You can find the whole installation process in 8 steps with some descriptions below. I hope it helps somebody.
Best regards.
Step - Description (problem and solution)
0. Uploading the installation files and arranging file permissions.
1a. Starting the installation.
1b. PROBLEM 1: Empty page, nothing to see about the install process.
1c. SOLUTION 1: ‘disable_path_info = On’ in config.inc.php.
2a. Starting the installation (again).
2b. PROBLEM 2: ‘file uploads = No’ in installation page.
2c. SOLUTION 2: Creating php.ini with;
file_uploads = 1;
upload_max_filesize = 10M;
3a. Starting the installation (again).
3b. Installation is done.
4a. Creating the journal.
4b. PROBLEM 3: ‘The requested URL was not recognized.’ for the journal ‘Path’
4c. Inserting below instructions (php.ini) for error logging;
error_reporting = E_ALL | E_NOTICE | E_DEPRECATED | E_STRICT;
log_errors = On;
display_errors = Off;
error_log = /aaa/bbb/ccc/ddd/htdocs/anotherjournal-com/php-errors.log;
5a. Checking php log to find a clue, noticing an error: PHP Strict Error (PROBLEM 4)
5b. SOLUTION 4: Inserting below instructions (php.ini) to prevent PHP Strict Error;
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Istanbul
6a. SOLUTION 3: Inserting below instructions (.htaccess) to prevent the PROBLEM 3;
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,L]
</IfModule>
6b. SOLUTION 3 (cont.): Changing ‘restful_urls = On’ in config.inc.php to let .htaccess can be read by the system.
6c. Journal successfully created.
7a. PROBLEM 5: When open backend for the journal (https://anotherjournal.com/?journal=another&page=submissions) it says: ‘Error: An unexpected error has occurred. Please reload the page and try again.’
7b. While inspecting, it shows HTTP error 500. Seems it is coming from journal’s API path.
7c. In the admin panel (backend), HTTP error 500 for menu items of;
Submissions
Workflow
7d. php-errors.log says, in brief:
'PHP Fatal error: Uncaught Error: Call to a member function getApp() on int in /aaa/bbb/ccc/ddd/htdocs/eee-com/lib/pkp/classes/core/APIRouter.inc.php:115'
7e. SOLUTION 5: Inserting below instructions (.htaccess) to prevent the error;
RewriteBase /
## https://forum.pkp.sfu.ca/t/solved-upgrade-from-ojs-3-1-2-4-to-ojs-3-2-1-2-problems-with-url-api-in-back-office/65032/13
## Rules for ANOTHER
RewriteCond %{SERVER_NAME} ^(www\.)?anotherjournal.com
RewriteRule ^api/v1(.*)$ index.php/another/api/v1$1 [L,R=307]
RewriteCond %{SERVER_NAME} ^(www\.)?anotherjournal.com
RewriteCond %{REQUEST_URI} !/another/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/another/$1 [L]
- All problems are solved, system is working properly, no error in the log.