Как заставить php работать в Mac OS X?

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

Я добавил файл информации в корневой каталог веб-узла, и он выводит файл как текст.

info.php
with the content
<?php phpinfo(); ?>

Ответ 1

(Edit: этот метод работает отлично для 10.9 (Mavericks), 10.10 (Yosemite) и 10.11 (El Capitan), поэтому я решил, что упомянул, что для любого нового притока слегка разочарованных обновлений OS X: D)

Отредактируйте файл /etc/apache 2/httpd.conf и убедитесь, что строка:

LoadModule php5_module libexec/apache2/libphp5.so

... существует. Я думаю, что он по умолчанию комментировался в стандартной конфигурации OS X, но из того, что я помню, вам просто нужно раскомментировать его, а затем перезапустить Apache:

sudo apachectl restart

И вам должно быть хорошо идти.

Ответ 2

ОБНОВЛЕНИЕ: Обратите внимание, что это было написано для OS X pre- (High) Sierra. Если вы используете OSX 10.12 или новее, пожалуйста, следуйте этому превосходному руководству Энди Миллера: macOS 10.13 High Sierra Apache Setup: несколько версий PHP


Мне тоже нравится использовать вещи, которые в основном уже есть. Я не понимаю, почему кто-то использовал бы MAMP или AMPPS (или любое другое упакованное стороннее готовое приложение для веб-сервера), когда Mac OS X поставляется с apache и PHP по умолчанию.

Мне понадобилось несколько попыток, чтобы заставить его работать, так что вот в основном то, что сделало это для меня, и, надеюсь, это поможет вам, ребята, сэкономить немного времени.

Как сказал Мэтт Гибсон, запустите терминал и наберите: (для sudo требуется ваш пароль root)

sudo nano /etc/apache2/httpd.conf

Затем раскомментируйте эту строку, удалив перед ней символ "#" (Ctrl + V можно использовать как страницу вниз).

LoadModule php5_module libexec/apache2/libphp5.so

Чтобы убедиться, что вы можете включать файлы и т.д. В PHP, выделите "User _www" (в моем случае) и измените его на: (где "yourusername" - это пользователь, с которым вы входите)

User yourusername

Вы можете оставить группу "как есть", "Group _www" по умолчанию при новой установке OS X Mountain Lion.

По умолчанию apache ищет только index.html, поэтому найдите "DirectoryIndex index.html" и измените его на: (добавление index.html в конце необязательно, конечно)

DirectoryIndex index.php index.html index.htm

Выйдите и сохраните, нажав Ctrl + X (и подтвердите, нажав "y")

Затем перезапустите Apache:

sudo apachectl restart

Мой phpinfo(); возвращается с версией PHP 5.3.15

==================

Так как я считаю полезным, чтобы мои локальные сайты были в моем каталоге пользователя, я создал каталог /Users/yourusername/Sites (которого больше нет по умолчанию в Mountain Lion).

Снова отредактируйте httpd.conf через "sudo nano/etc/apache2/httpd.conf" и...

Прокрутите вниз до "DocumentRoot" и измените его на: (где "yourusername" - это имя пользователя, с которым вы входите)

DocumentRoot "/Users/yourusername/Sites/"

Прокрутите туда, где написано: "# Это должно быть изменено на то, что вы установили для DocumentRoot". и измените следующую строку на: (где "имя пользователя" - это имя пользователя, с которым вы входите)

<Directory "/Users/yourusername/Sites/">

Затем выйдите и сохраните, нажав Ctrl + X (и подтвердите, нажав "y")

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

Ответ 3

У меня есть одно слово для вас. MAMP.

Ответ 4

Попробуйте phpbrew

Это облегчает сборку, установку инструмента для PHP, любую версию.

Ответ 5

Для последней версии Mac OS, то есть Mojave 10.14, выполните следующие действия, чтобы активировать сервер PHP:

  1. Откройте терминал. Нажмите Ctrl + пробел, введите терминал и нажмите Enter.

  2. Введите команду $ sudo nano/etc/apache2/httpd.conf для редактирования файла httpd.conf в nano, который является встроенным редактором файлов в macOS.

  3. Введите пароль.

  4. Теперь найдите модуль загрузки, нажав control + w.

  5. Найти файл с именем #LoadModule php7_module libexec/apache2/libphp7.so

  6. Раскомментируйте файл, удалив символ #, присутствующий в самом начале модуля.

  7. Теперь выйдите из редактора, нажав control + x, нажмите y, чтобы сохранить изменения, и нажмите ввод, чтобы подтвердить изменения в файле httpd.conf.

  8. Теперь перезапустите сервер Apache, введя команду

    $ sudo apachectl restart

  9. PHP сервер должен быть запущен.

Теперь вы можете проверить работу вашего сервера, открыв файл PHP из каталога вашего сервера по умолчанию, или вы также можете изменить каталог.

Ответ 6

После обновления MAC OSX до 10.14.5 мой конфигурационный файл Apache был новым, и все мои предыдущие настройки были заменены настройками по умолчанию.

Мне не удалось открыть какие-либо файлы PHP в моем браузере. Я следовал за вышеупомянутыми шагами, и это решило проблему.

Примечание. В OSX 10.14.5 есть Php7.1.23.

Шаги, за которыми я следовал -

  1. Отредактируйте файл httpd.conf, расположенный в /etc/apache2/httpd.conf
  2. Это ниже дано в прямом эфире был прокомментирован. Я раскомментировал его, удалив знак #, сохранил файл httpd.conf и перезапустил службу apache.

LoadModule php7_module libexec/apache2/libphp7.so

  1. перезапуск sudo apachectl

Спасибо за решение, оценил вашу помощь друзья.

С Уважением,

Вики Джадхав (Индия - Пуна)