Правило htaccess для разбора php в html файлах не работает - PullRequest
3 голосов
/ 21 февраля 2012

не может на всю жизнь понять, почему это не работает - на сервере Dreamhost я создал файл htaccess и добавил AddHandler php5-cgi .html .htm, чтобы разрешить php в html-файлах, согласно документации Dreamhost. На идентичном пакете Dreamhost я сделал то же самое для другого сайта, и он работал отлично, но в этом случае он просто не будет анализировать php! Есть ли что-то, что я мог бы пропустить здесь, что может вызвать проблему? Htaccess находится в корне сети и не переопределяется ничем другим.

Ответы [ 4 ]

8 голосов
/ 21 февраля 2012

попробуйте

  AddType application/x-httpd-php .html .htm

Вышеуказанная настройка будет работать, если apache выбирает php как модуль.

 AddHandler application/x-httpd-php .html .htm

или

 AddHandler application/x-httpd-php5 .html .htm

выше будет работать, если Apache выполняет PHP как CGI?

нет никакого вреда, я бы сказал, чтобы поставить оба из вышеуказанных условийвместе, но попробуйте один над другим и посмотрите, работает ли он для вас.

читать дальше здесь

4 голосов
/ 21 февраля 2012

Использует ли ваш сервер suPHP, а не mod_php или обычный php-cgi?

Попробуйте использовать

AddHandler x-httpd-php .html .htm

или

AddType application/x-httpd-php .html .htm

вместо.

Постскриптум

Службы общего хостинга используют разделение на основе UID для отдельных учетных записей друг от друга. Большинство используют suPHP , но некоторые используют suEXEC . Они будут использовать один из них. Оба действуют как обертка su для php-cgi, поэтому вы не можете узнать из phpinfo (), как его движка PHP-скриптинга, так как в обоих случаях будет сообщаться Server APICGI/FastCGI. Для сценариев, инициируемых CGI, phpinfo не сообщает о конфигурации Apache. Вам нужно либо посмотреть на часто задаваемые вопросы вашего хостинг-провайдера, либо, возможно, попробовать:

 <?php
 header( "Content-Type: text/plain");
 echo system('grep -iR LoadModule /etc/httpd /etc/apache2');

На форумах поддержки / FAQ хостинг-провайдера могут быть даны конкретные рекомендации по настройке здесь. Вы пробовали их?

1 голос
/ 27 сентября 2012

У меня та же проблема, что и у вас, но я просто положил AddType php .html .htm в свой .htaccess, он работает.

0 голосов
/ 17 октября 2015

Для меня это работает только так:

AddHandler php-cgi .php .htm
...