Apache показывает PHP-код – после обновления на Mac до macOS Sierra

Я использую iMac, который я только что обновил до macOS Sierra. До этого он управлял El Capitan.

Под моей настройкой El Capitan у меня были Apache, PHP и MySQL, настроенные в соответствии с этим руководством: https://coolestguidesontheplanet.com/get-apache-mysql-php-and-phpmyadmin-working-on-osx-10-11-el -capitan / . Это без проблем.

  • PHP-код возвращается вместо выполненного
  • Php не распознается как внутренняя или внешняя команда (окна 7)
  • Скопировать весь сайт, включая PHP и SQL?
  • Настройки отправки электронной почты с localhost для PHP-кода в Windows Vista
  • Использование DOMDocument + DOMXPath для удаления всех, кроме определенных тегов и атрибутов из HTML
  • Linux: интерпретируется на чтение (ala php) для локальных файлов
  • Когда я обновился до Sierra, он перезаписал загрузку конфигурационных файлов. Поэтому я вернулся через проводника и сконфигурировал все, что было при Эль Капитане.

    Http: // localhost работает так, как я ожидал, и я могу видеть файлы на своем веб-сайте. Однако, если я открываю страницу PHP, она просто показывает исходный PHP-код, а не выполняет его.

    Я использую следующее:

    апаш

    Версия сервера: Apache / 2.4.23 (Unix)

    Сервер построен: 8 августа 2016 16:31:34

    PHP

    PHP 7.0.10 (cli) (построено: 31 августа 2016 10:25:51) (NTS)

    MacOS: Sierra 10.12

  • Markdown «одиночная страница» веб-приложение PHP с предварительным просмотром в реальном времени?
  • PHP: префикс libssh2 на Ubuntu 9.10?
  • Изменение HTTP_ACCEPT_LANGUAGE
  • Драйверы Microsoft PHP SQL Server не работают, модуль загрузки по умолчанию
  • Apache 2.4 + php 5.4.7 не может загрузить php5apache2_4.dll
  • Проверка версии PHP, которую я запускаю в Linux?
  • 4 Solutions collect form web for “Apache показывает PHP-код – после обновления на Mac до macOS Sierra”

    Sierra поставляется с PHP 5, а не с PHP 7. В любом случае, проверьте, загружен ли модуль в httpd.conf :

     LoadModule php5_module libexec/apache2/libphp5.so 

    Если это не сработает, возможно, вы не сказали Apache распознавать * .php файлы как исполняемые файлы php. Для этого найдите и отредактируйте httpd.conf и добавьте следующие строки (если они еще не присутствуют):

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

    И отредактируйте параметр DirectoryIndex :

     <IfModule dir_module> DirectoryIndex index.php index.html </IfModule> 

    Другим распространенным решением является активация коротких открытых тегов (если у вас есть какой-либо код PHP). Найдите php.ini , найдите строку short_open_tag = Off и измените ее на short_open_tag = On .

    Перезапустите Apache.

    Убедитесь, что #LoadModule php5_module libexec/apache2/libphp5.so раскомментирована в основном файле httpd.conf . Не забудьте перезапустить Apache sudo apachectl restart .

    У меня тоже была эта проблема. Проверьте /private/ect/apache2/extra/htttpd-vhosts.conf, чтобы узнать, все ли еще есть настройки виртуальных хостов. Мой оригинальный был переименован в httpd-vhosts.conf ~ previous.

    Ваш apache больше не обрабатывает php-файлы. Есть линия

     LoadModule **php5_module** libexec/apache2/**libphp5.so** 

    В файле конфигурации /etc/apache2/httpd.conf

    Но вы установили PHP7. Измените его на:

     LoadModule **php7_module** libexec/apache2/**libphp7.so** 

    Или, возможно, модули / mod_php.so или всякий раз, когда находится php-модуль.

    Давайте будем гением компьютера.