PHP 5.5 FreeBSD mod apache — Fatal error: Call to undefined function mysql_connect()
Всякие нововведения добрались и до моего любимого FreeBSD.
Оказывается при конфигурации порта PHP 5.5 в FreeBSD уже нельзя указать что нужно собирать apache module. Модуль PHP для Apache вынесли в отдельный порт и он теперь называется www/mod_php5 или www/mod_php55 (в зависимости от нужной версии 5.4 или 5.5).
Но это еще не все.
После установки модуля www/mod_php55 вебсервер отказался отдавать сайт и начал выкидывать ошибку:
Fatal error: Call to undefined function mysql_connect() |
Такое чувство, что php скомпилировался без php55-extensions, хотя в них я как всегда указываю необходимость MYSQL и MYSQLI.
Гугление обратило внимание на новую опцию — Force Zend Thread Safety (ZTS), говорят если собираете PHP 5.5 с ней, то нужно собирать с ней и модуль mod_php55
В общем удалил все PHP и зависимости, пересобрал с опцией ZTS все заново, перезапускаем apache
apachectl graceful |
Все заработало. Остается докрутить php.ini под новые фишки OPcache.
Фразы: борьба с новым PHP 5.5 FreeBSD, замена apache module на mod_php55, cannot open «/usr/local/libexec/apache24/libphp5.so»