HTTP ERROR 500 on page /install/page_end.php during last step of install. #356
Replies: 6 comments 3 replies
-
Thanks Robert. Do you know the MySQL/MariaDB version? |
Beta Was this translation helpful? Give feedback.
-
Though if it installs on 8 with the exact same setup, then it's probably some PHP issue with 8.1. Though I have installed on 8.1 elsewhere. So... Hmmm. If you modify the /install/common.inc.php file and around line 45, after the line: "error_reporting( E_ALL ); You could add this: ini_set('display_errors',1); Or you could look in the error log if you know where to find it and it's accessible on the server. Anyway, if you do that, and then run through a fresh install, it should at least give you the actual error that's causing the 500 situation. --Julian |
Beta Was this translation helpful? Give feedback.
-
This is very interesting. XOOPS_DB_TYPE is set in the /mainfile.php. Or at least it's supposed to be. And it's hard coded to pdo.mysql so you should see a line in your /mainfile.php around 116 that declares that. If that's in there, then this is way more puzzling, because that suggests that the declaration is then being unset or I don't know what. More likely, your mainfile.php might be damaged/old and it's set to not be writable or something, and the installation process can't update it when it's supposed to, so then later in the installation the system is missing some key info, like this constant. You might also get strange results if you have a failed install and you just go back to the beginning and start again, without clearing out and resetting the mainfile.php and without using a new trust path, etc. The installation needs to be fresh I think. Does this point in the right direction? --Julian |
Beta Was this translation helpful? Give feedback.
-
Further details... initial mainfile.php is mostly empty. The install folder contains a file called /install/templates/mainfile.dist.php which is basically the mainfile that will be used, but without some of the specific details of your install filled in, like the trust path folder and file names. The installer copies that dist file to the root folder at some point. Later, the installer makes that file 444 if it can. So maybe you tried to overwrite it but that failed, because it was 444 from a broken install earlier? Etc. This is another reason why starting totally fresh can be important. Or at least making sure the mainfile.php is properly reset. --Julian |
Beta Was this translation helpful? Give feedback.
-
Is this 7.11 or the latest GitHub code? |
Beta Was this translation helpful? Give feedback.
-
OK, I think this is sorted out. URL detection problem. There was no PHP error. There was nothing related to PHP or the database or anything like that. Formulize does a few things to detect the base URL for the site. This can get funky when the site resides at a folder below the official PHP DOCUMENT ROOT. ie: site is www.sitename.com/somefolder/ We compare the dirname where the mainfile.php is, with the DOCUMENT ROOT and look for differences. dirname will have /somefolder on the end, DOCUMENT ROOT will end at the domain. Problem was, on your server, there are differences unrelated to this. The server config sets the DOCUMENT ROOT to be some alias for the actual folder, whereas the dirname is the real path to the file. This was screwing up the base URL detection and that meant that the stylesheet, among other things, would not be included properly. I have accounted for this sort of, by double checking if a divergence in the directory path and the DOCUMENT ROOT is only in the middle, and not right to the end of the two strings. If the ending of the strings is the same, then bold assumption is that there is no extra folder that we need to append to the base URL. However this would probably break in its current incarnation if you did put a site into a subfolder and not the root of the domain. This could be bypassed entirely by explicitly declaring the XOOPS_URL in the mainfile.php. But the automatic detection is meant to simplify things and make the site more portable. There's a commit with this here: 5797055 And it's applied to your server already. --Julian |
Beta Was this translation helpful? Give feedback.
-
Server API: cgi-fcgi
PHP version: 8.0.28
MySQL extension: Success
Session extension: Success
PCRE extension: Success
file_uploads: ON
This also happens on the tables page but works after a page reload.
/install/page_tablescreate.php
I got the most recent built to finally install but the only thing I get to load is just a big X on the homepage.
It installs on PHP8.0 but not on PHP8.1
Site is still not working after the install. Strange X that takes up the full screen is the only thing that shows up.
Beta Was this translation helpful? Give feedback.
All reactions