CentOS 6.0, 64-bit, MySQL 5.1.56, Apache 2.2.21, PHP 5.3.8 -w- fastCGI handler
I've moved a working ModX Install to a new host. After updating all of the file paths I tried to load the manager and I got a blank page. So I tried adding the setup folder, and when I run setup I get a Modx error: "MODX requires the PDO extension when native PDO is being used and it does not appear to be loaded."
I created a basic test.php page to load PHPinfo () and it's working ok.
So using EasyApache I rebuilt PHP 5.3.8 with fastCGI and PDO enabled. Still get the error.
I checked the php.ini file and I could see that there are a few lines still commented:
;extension=pdo.so
;extension=pdo_mysql.so
After uncommenting these and restarting Apache 2.2.21 I now find that all PHP pages throw a 500 - Internal Server Error. This error goes away as soon as I comment the "extension=pdo.so" line again.
Also, I verified that this line exists in php.ini:
extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20090626"
and this does in fact point to the required .so files.
I'm running PHP 5.3.8 because I read that 5.3+ is recommended for modX.
My host has given up and want me to use a certified partner (pay). Anyone have an idea of what else to try here?
Thanks,
-Brian
[ed. note: bmilton last edited this post 15 years, 1 month ago.]
-
☆ A M B ☆
- 2,213 Posts
It sounds like something else is missing with php configuration. Do you have PDO MySQL installed as well?
In Easy Apache I checked the PDO and the PDOMySQL boxes. When I look in the extension_dir I see:
pdo.so
pdo_mysql.so
pdo_sqlite.so
sqlite.so
-Brian
-
MODX Staff
- 10,725 Posts
Check your Apache error log (or whatever is configured as your error_log in php.ini). It should contain information about the 500 error if you have the PHP setting log_errors enabled.
This is what it is logging on the test page that loads phpinfo().
[Fri Sep 23 15:57:26 2011] [error] [client 71.41.235.162] Premature end of script headers: test.php
[Fri Sep 23 15:57:26 2011] [warn] [client 71.41.235.162] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
[Fri Sep 23 15:57:26 2011] [error] [client 71.41.235.162] Premature end of script headers: index.php
[Fri Sep 23 15:57:26 2011] [warn] [client 71.41.235.162] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
[Fri Sep 23 15:57:26 2011] [error] [client 71.41.235.162] Premature end of script headers: index.php
[Fri Sep 23 15:57:26 2011] [warn] [client 71.41.235.162] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
[Fri Sep 23 15:57:26 2011] [error] [client 71.41.235.162] Premature end of script headers: index.php
[Fri Sep 23 15:57:32 2011] [error] mod_fcgid: process /usr/local/cpanel/cgi-sys/php5(7339) exit(communication error), get signal 4, possible coredump generated
[Fri Sep 23 15:57:32 2011] [error] mod_fcgid: process /usr/local/cpanel/cgi-sys/php5(7337) exit(communication error), get signal 4, possible coredump generated
[Fri Sep 23 15:57:32 2011] [error] mod_fcgid: process /usr/local/cpanel/cgi-sys/php5(7335) exit(communication error), get signal 4, possible coredump generated
[Fri Sep 23 15:57:32 2011] [error] mod_fcgid: process /usr/local/cpanel/cgi-sys/php5(7333) exit(communication error), get signal 4, possible coredump generated
Not sure what all that means other than there is something wrong with fastCGI. I'm going to try rebuilding without PHP. Then a new build of PHP 5.36 instead of 5.38 to see what happens.
-
☆ A M B ☆
- 2,213 Posts
Yea, if I recall correctly 5.3.8 isn't the most stable at this moment in time. It gave us some issues on a test server. You should be fine with 5.3.6, if not let me know and I can take a closer look for you.
I am guessing this is cPanel server and you have root access?
Yes, it is Cpanel with root access. I've tried over and over to get it working. It seems that everything with PHP 5.3.8 is fine right up until I rebuild with pdo_mysql enabled. At that point I get the Server 500 error and an error like this being logged to the console when Apache starts:
"php[28036] trap invalid opcode ip:3fc9e14"ca0 sp:7fff08ed6898 error:0 in ld-2.12.so[3fc9e00000+1e000]"
If I comment out pdo_mysql.so in php.ini the errors stop but of course modX won't work without it.
Tried rebulding with 5.2.17 and pdo_mysql and the problem is the same.
I'm trying to get the host to look at it again right now as it seems like a more fundamental issue than the specific PHP ver.
-Brian
[ed. note: bmilton last edited this post 15 years, 1 month ago.]
-
☆ A M B ☆
- 2,213 Posts
Hello Brian,
It sounds like something else may be conflicting with pdo, could you tell us more about the server configuration overall? If you are willing another option would be for one of us to take a look at the configuration and see if we find something out of place.
Thanks AMDbuilder.
Latest from my host is that there is a bug related to glibc and 64-bit x86 systems which makes sense. CentOS 6.0 64-bit is installed and apparently it is running a pretty old version of glibc. They pointed me to the bug details and said I should be able to resolve it, but I've never done an update like this! I pushed it back to them and asked if they could offer a better solution since the default OS install is not stable.
-Brian