• Article for your preferred language does not exist. Below is international version of the article.

Article ID: 113828, created on May 5, 2012, last review on Oct 13, 2014

  • Applies to:
  • Operations Automation

Symptoms


Apache cannot start on Linux Shared Hosting NG webserver after PHP 5.3 was upgraded to php53-5.3.3-5.el5 (using the command yum update php53) with the error message below:
# service httpd start
Starting httpd: [Sat May 05 17:45:53 2012] [notice] POA VHosts: module has registered its hooks.
httpd.worker: Syntax error on line 95 of /etc/httpd/conf/httpd.conf: Syntax error on line 9 of /etc/httpd/conf.d/php.conf:
Cannot load /etc/httpd/modules/libphp5-zts.so into server:
/etc/httpd/modules/libphp5-zts.so: cannot open shared object file: No such file or directory
                                                           [FAILED]


Cause


The PHP module libphp5-zts.so is absent on a webserver. It also cannot be found in Cloudlinux repository, yum cannot find it:
# yum search php-zts*
Loaded plugins: fastestmirror, rhnplugin
Loading mirror speeds from cached hostfile
 * cloudlinux-base-h2e: repo.cloudlinux.com
 * cloudlinux-x86_64-server-5: xmlrpc.cln.cloudlinux.com
Reducing repo-id-7 to included packages only
Finished
Warning: No matches found for: php-zts*
No Matches found

During PHP 5.3 upgrade the following directive is being configured in the file /etc/httpd/conf.d/php.conf which is included from the main Apache configuration file /etc/httpd/httpd.conf:
<IfModule worker.c>
   LoadModule php5_module modules/libphp5-zts.so
</IfModule>

So, Apache is configured to load absent PHP module and it cannot start due to this misconfiguration.

Resolution


The workaround:

  • Comment the directive which loads libphp5-zts.so module in the file /etc/httpd/conf.d/php.conf
  • Start Apache

5356b422f65bdad1c3e9edca5d74a1ae caea8340e2d186a540518d08602aa065 e12cea1d47a3125d335d68e6d4e15e07

Email subscription for changes to this article
Save as PDF