В логах Apache, вот такое безобразие:
Код: Выделить всё
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20131226/mysql.so' - /usr/local/lib/php/20131226/mysql.so: Undefined symbol "executor_globals" in Unknown on line 0
Код: Выделить всё
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20131226/mysql.so' - /usr/local/lib/php/20131226/mysql.so: Undefined symbol "executor_globals" in Unknown on line 0
Да уже пересобрал. Все порты физически удалял, потом востанавливал - #portsnap extract, чтоб уже точно ничего кривого не осталось. Всё четно...snorlov писал(а):Я бы для начала пересобрал весь софт 2-а раза...
Код: Выделить всё
apachectl -t -D DUMP_MODULES | grep php
Код: Выделить всё
php -m | grep mysql
Код: Выделить всё
/usr/ports/www/mod_php56]# make showconfig | grep ZTS
Веб сервер пользуется интерпретатором, в данном случае PHP, в данном случае работа с которым, реализуется mod_php. А вот чем он пользуется, что именно использует, благодаря чему он понимает синтаксис расширений - я не знаю, но именно с этим видимо и проблемы.Amadeus писал(а):Чем по вашему мнению веб сервер, основная задача которого не обработка кода, пользуется ?
Еслиб не стоял, <? print('Hello world")?> бы не работало, а оно работает. У меня работает сам PHP, но только базовый функционал, ни одно расширение не прикручивается, все выдают ошибку.Amadeus писал(а):mod_php стоит вообще?)
Немного запутались в понятиях. У mod_phpX нет такой вещи, как "Cущность для определения расширений". Единственное существенное отличие - ZTS. (zend thread saferty)А вот чем он пользуется, что именно использует, благодаря чему он понимает синтаксис расширений - я не знаю, но именно с этим видимо и проблемы.
Работал с php. С другими языками в этом плане проще.что бы в апаче работал event mpm
PHP я изначально ставил с поддержкой ZTS, и у mod_php поддержка ZTS тоже включена была.Amadeus писал(а):Ну вот вы сами написали причину вашей проблемы)
у вас два выхода
1) Пересобрать php с поддежкой ZTS. Потом так же потом так же поступить с экстеншенами (точнее тут просто персобрать, так как они берут ее с основны)
2) Пересобрать mod_php без ZTS.
Факт в том, что Вы методом тыка - натыкали опции при конфигурации портов, из-заVolaner писал(а):PHP я изначально ставил с поддержкой ZTS, и у mod_php поддержка ZTS тоже включена была.Amadeus писал(а):Ну вот вы сами написали причину вашей проблемы)
у вас два выхода
1) Пересобрать php с поддежкой ZTS. Потом так же потом так же поступить с экстеншенами (точнее тут просто персобрать, так как они берут ее с основны)
2) Пересобрать mod_php без ZTS.
Ради интереса, поставил nginx, который работает с php через FPM а не mod_php, ошибки были те же.
В итоге, поудалял PHP, mod_php и все расширения. Установил всё заново через pkg, и модули заработали, и через mod_php в apache, и через FPM в nginx. До этого, я несколько раз переставлял всё через порты, делая #make rmconfig и всё перенастраивая, всё было четно. В общем, не понятно, что за фигня происходит в портах, факт в том, что собираются PHP и его расширения, которые не совместимы друг с другом....
Значит либо там либо там не была включена. Мы не в стране ОЗ живём.PHP я изначально ставил с поддержкой ZTS, и у mod_php поддержка ZTS тоже включена была.
Код: Выделить всё
[root@nalog-rev /]# pkg query -e "%n=php55" "%n-%v %Ok %Ov"
php55-5.5.38_2 CGI on
php55-5.5.38_2 CLI on
php55-5.5.38_2 DEBUG off
php55-5.5.38_2 DTRACE off
php55-5.5.38_2 EMBED off
php55-5.5.38_2 FPM on
php55-5.5.38_2 IPV6 on
php55-5.5.38_2 LINKTHR on
php55-5.5.38_2 MAILHEAD off
php55-5.5.38_2 ZTS off
[root@nalog-rev /]# pkg query -e "%n=mod_php55" "%n-%v %Ok %Ov"
mod_php55-5.5.38_2 AP2FILTER off
mod_php55-5.5.38_2 DEBUG off
mod_php55-5.5.38_2 DTRACE off
mod_php55-5.5.38_2 IPV6 on
mod_php55-5.5.38_2 LINKTHR on
mod_php55-5.5.38_2 MAILHEAD off
mod_php55-5.5.38_2 ZTS off
[root@nalog-rev /]# pkg query -e "%n=php55-mysql" "%n-%v %Ok %Ov"
php55-mysql-5.5.38_1 MYSQLND on
Код: Выделить всё
ZTS off