Jump to content

Shared host has updated PHP? and broken PW site


antknight
 Share

Recommended Posts

A site I built a few years ago has been down for a few days. I haven't had much joy from the hosting support. It seems they have updated something which results in a 500 internal server error. This is what they have said:

I have taken a look at your ticket. From what I can see my colleague has already advised you that due to the TLS 1.0 and TLS 1.1 being 
on end of life we've had to update all of our servers which were not compliant to at least PHP version 5.3 in order to support TLS 1.2 
and all of the traffic is now only using TLS 1.2. I am terribly sorry but afraid that due to this update the PHP extension from the 
error log is no longer present on the server and there is no known workaround. 

See attached for error log

Processwire debug output:

Fatal error: Exception: Required PDO class (database) not found - please add PDO support to your PHP. (in /home/jimm8669/public_html/wire/core/ProcessWire.php line 143) #0 /home/jimm8669/public_html/wire/core/ProcessWire.php(51): ProcessWire->load(Object(Config)) #1 /home/jimm8669/public_html/index.php(185): ProcessWire->__construct(Object(Config)) #2 {main} in /home/jimm8669/public_html/index.php on line 216

 

Is this something I can fix or is it the hosting?

Thanks

error_log

phpinfo().htm

Link to comment
Share on other sites

Hi, looking at the phpinfo, there is not a PDO extension loaded. Ensure that the required extension are loaded - locate and check the php.ini for the following extension and uncomment it if needed  :

;extension=pdo_mysql.so

Updating this file or enabling an extension can be done in different way, please give us more info about the host (server managed by a Panel ? lamp on vps/ssh, etc).

 

Also, as the hosting provider updated their configuration, you could check if everything required by ProcessWire is installed/loaded by running the first step of this file :

  1. Download https://github.com/flydev-fr/Duplicator/blob/master/Deploy/installer.php
  2. Upload the file on the root directory
  3. Navigate to http://yourwebsite.foo/installer.php
  4. Click on "Get Started" and check the "Step #1 - Compatibility Check" result

 

compcheck.png.f45dc4d7657433e7e1dcbb52b98c44f0.png

  • Like 3
Link to comment
Share on other sites

Ok then go to Software/Services section of the cPanel home screen, click Select PHP Version and select the version you want (you should use the last stable release).

For the extension (you need to enable pdo_mysql extension here), it should be located in PHP Settings or something like that. Please refer to your host's online documentation.

 

  • Like 3
Link to comment
Share on other sites

OK it turns out they are using a terrible host. No way to select PHP version (the site is on PW2.3 so this is OK). But also no way to enable extensions. I will contact the host again.

Thanks for your help, stay tuned....

Link to comment
Share on other sites

Are you sure you don't have dumb php mistakes in your templates/theme/custom functions etc.?

Processwire works fine with the latest PHP versions.

Start by making sure you don't have have "<? ..." where you should use "<?php ..." etc. That's what messed up my old sites a few years ago when I upgraded from PHP5 to PHP7.

Even the silliest little things can give you 500 fatal errors. If there is an "<? include ..." somewhere that could lead to missing classes, the PDO error, other things that look more interesting.

Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...