This article is also available in our new Knowledge Base: PHP Does Not Load Under Apache, Error: "undefined symbol: unixd_config"
Linux with Apache 2.4
After installing Zend Server on Linux with Apache 2.4, PHP doesn't load with an error:
When using a single repo point for multiple Linux versions, you might install PHP built for Apache 2.2 on Apache 2.4 environment, or vice versa.
The PHP loading error above appears when installing PHP from the non-Apache 2.4 repo on Apache 2.4.
In General, Zend repos have multiple points, or symlinks, to collect packages around specific tasks, in this case, Apache 2.2 and 2.4 different builds.
This recipe can help you migrate to a working setup of Zend Server, or if you are provisioning a new system, skip the 3 steps to remove and just modify your repo and install fresh server instance.
- Remove Zend Server with the uninstall.sh script in /usr/local/zend/bin, or by using package remove command from the online reference.
- Remove the incorrect repos and update your package manager data.
- Purging package cache / Zend packages is recommended at this stage.
- Load correct repo from http://repos.zend.com, or use the Zend Server installer from the downloads page. Alternatively, mirror the correct repos if you need to. Check the online ref regarding RPM/DEB installation:
- Install again - you should be free from the undefined symbol with the correct build of PHP and extensions.