URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 4000
[ Назад ]

Исходное сообщение
"Проблема с интерпритацией PHP"

Отправлено Finch , 27-Мрт-06 14:57 
Переставил систему, пришлось соответственно переставлять все сервисы.

Поставил апач, конфиги использовал от старого (работало все просто на ура)
поставил из портов mod_php4, в конфиги загрузку модуля прописал верно,
AddType и все прочее тоже в норме. Запускается без ошибок.

Но код не интерптетирует. При попытка загрузки с "/" (а-ля www.host.ru/)
предлагает скачать фаил с именем default, в котором и есть сам скрипт :(

Что делать?

Apache 1.3.34 / PHP 4.4.2

!!!СРОЧНО!!!


Содержание

Сообщения в этом обсуждении
"Только без паники!"
Отправлено XAnder , 27-Мрт-06 16:21 
Во-первых, посмотри, что там Апач пишет в логи на "попытку загрузки с /".

Есть подозрение, что интерпретатор просто не работает. Ещё раз проверь, что файл, указанный в команде "LoadModule php4_module" действительно существует. Попытайся определить, с каким типом MIME отдается содержимое, которое "предлагается скачать". Если это тип "application/x-httpd-php" (или что-то в этом роде), то значит, что Апач правильно определяет тип файла, но интерпретатор по каким-то причинам не запускается (кривые настройки?).


"Только без паники!"
Отправлено Finch , 27-Мрт-06 16:29 
>Во-первых, посмотри, что там Апач пишет в логи на "попытку загрузки с
>/".
>
>Есть подозрение, что интерпретатор просто не работает. Ещё раз проверь, что файл,
>указанный в команде "LoadModule php4_module" действительно существует. Попытайся определить, с каким
>типом MIME отдается содержимое, которое "предлагается скачать". Если это тип "application/x-httpd-php"
>(или что-то в этом роде), то значит, что Апач правильно определяет
>тип файла, но интерпретатор по каким-то причинам не запускается (кривые настройки?).
>


тип верный - application/x-httpd-php

LoadModule php4_module        libexec/libphp4.so
AddModule mod_php4.c
присутствуют.

настройки проверил уже черт знает сколько раз.
(старые-то 100% верные, ибо работали) пробывал пересобирать
пхп, апач. из портов, в ручную... все бестолку.

кстати если натравлять на скрипт /usr/bin/php - то интерпритирует
нормально..


"А модуль точно на месте?"
Отправлено XAnder , 27-Мрт-06 17:15 
>тип верный - application/x-httpd-php
>
>LoadModule php4_module        libexec/libphp4.so   <<<--- ???
>AddModule mod_php4.c
>присутствуют.
>
>настройки проверил уже черт знает сколько раз.
>(старые-то 100% верные, ибо работали) пробывал пересобирать
>пхп, апач. из портов, в ручную... все бестолку.
>
>кстати если натравлять на скрипт /usr/bin/php - то интерпритирует
>нормально..

Значит дело в нестыковке Апача с ПХП.

Из портов, говоришь? Значит FreeBSD, надо полагать? Если не ошибаюсь, модуль должен находиться в libexec/apache/libphp4.so. Проверь.


"А модуль точно на месте?"
Отправлено Finch , 28-Мрт-06 07:59 
>>тип верный - application/x-httpd-php
>>
>>LoadModule php4_module        libexec/libphp4.so   <<<--- ???
>>AddModule mod_php4.c
>>присутствуют.
>>
>>настройки проверил уже черт знает сколько раз.
>>(старые-то 100% верные, ибо работали) пробывал пересобирать
>>пхп, апач. из портов, в ручную... все бестолку.
>>
>>кстати если натравлять на скрипт /usr/bin/php - то интерпритирует
>>нормально..
>
>Значит дело в нестыковке Апача с ПХП.
>
>Из портов, говоришь? Значит FreeBSD, надо полагать? Если не ошибаюсь, модуль должен
>находиться в libexec/apache/libphp4.so. Проверь.

да, лежал.
просто я переставлял пхп потом ручками, т.к. из
портов он тоже не работал, сам он установился в libexec.

блин, ребята, какие ещё предположения?
я уже в панике.
проверил ВСЁ что только можно.


"Проблема с интерпритацией PHP"
Отправлено Ilyang , 27-Мрт-06 17:35 
в логах апача тишина?

"Проблема с интерпритацией PHP"
Отправлено Finch , 28-Мрт-06 07:57 
>в логах апача тишина?

в логах - тишина :(


"воспроизвел ситуацию"
Отправлено XAnder , 28-Мрт-06 09:36 
В общем мне пока что удалось воспроизвести ситуацию только одним способом - в httpd.conf пишу следующее:

<IfModule mod_mime.c>
    ...
    <IfModule mod_php4.c>
        AddType application/x-httpd-php-FAKE .php
        AddType application/x-httpd-php-source .phps
    </IfModule>
    ...
</IfModule>

То есть написал заведомо неправильный тип MIME на расширение ".php". Твоя ситуация в точности повторилась - сервер отдает исходник с непойми-каким типом, в логах тишина.

Похоже на то, что или тип у тебя написан не тот, или тип правильный, но самосборный PHP его игнорирует.

Других соображений пока нет.


"воспроизвел ситуацию"
Отправлено R , 26-Апр-06 19:15 
/etc/httpd/conf/httpd.conf:DirectoryIndex index.php at_domains_index.html index.htm index.html index.shtml index.html.var index.cfm
/etc/httpd/conf/httpd.conf:AddType application/x-httpd-php .php .phtml
/etc/httpd/conf/httpd.conf:AddType application/x-httpd-php-source .phps
/etc/httpd/conf/httpd.conf:LoadModule php5_module        /usr/lib/httpd/modules/libphp5.so