Назад | Перейти на главную страницу

HTML5 не обрабатывает / не анализирует как PHP7 / PHP

Поэтому мне пришлось перенастроить свой Linux-сервер, потому что я перенес его в другую систему и решил настроить с нуля просто для развлечения и практики. Единственная проблема в том, что теперь мой LAMP работает с PHP7 вместо того PHP5 как в прошлый раз. Проблема, с которой я сталкиваюсь, заключается в том, что мой HTML/HTML5 файлы не работают или обрабатываются как PHP. Я создал .htaccess файл и изменен с AddType и AddHandler, изменено application/x-httpd-php70 к application/x-httpd-php7, application/x-httpd-php7.0 и разные варианты этого, но он все еще не работает. Я действительно вижу эту часть PHP код виден как таковой.

Я заметил, что если удалить <p></p> из моего php-кода весь php снова скрыт. Также изменил " " к ' ' и дважды проверил, что синтаксис не изменился с php5 к php7 чего нет. Я протестировал .php файл с <?php phpinfo(); ?> и отлично работает, пока .php. Как только он будет изменен на .html вот когда он перестает работать. Модули PHP включены в apache2.4. Я перезапускал apache2.4 бесчисленное количество раз при изменении файлов в корневом веб-каталоге, и я просмотрел учебники по установке PHP7 с apache2.4 на ubuntu. Я фактически установил LAMP во время установки сервера, поэтому я не понимаю, почему это было бы неправильно. У меня совершенно нет идей. Сильно помогло с этим, я борюсь с этим уже почти 4 дня.

Вам необходимо указать .html как расширение спецификации AddHandler.

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

Или вы можете использовать блок FilesMatch для установки обработчика.

<FilesMatch ".html$">
    SetHandler application/x-httpd-php-source
</FilesMatch>

Кажется, есть два обработчика для php: application/x-httpd-php и application/x-httpd-php-source. Проверьте свою конфигурацию, чтобы увидеть, что используется, когда .php файлы обрабатываются.

Альтернативой было бы внутреннее перенаправление с .html к .php Такие как:

  RewriteRule  (.*).html $1.php

Вы можете сделать его условным, если страница .html не существует. Файлы необходимо будет соответственно переименовать.

Если вы не заблокируете или не перенаправите извне URL-адреса .php, запросы для страниц .php будут работать. Такое перенаправление может быть затруднительным.