Настройка и запуск WEB сервера apache2 на базе Mac OS X

Настройка и запуск WEB сервера apache2 на базе Mac OS X

Перед тем как делать изменения в системных файлав рекомендую вам настроить и использовать Time Machine

Версия Mac OS X 10.9 обновляет версию сервера Apache2 до 2.2.4 и версию php до версии 5.4.17.
После обновления до версии 10.9 Maveric необходимо восстановить изменения в файле/etc/apache2/httpd.conf как указано в данной статье. Данных изменений достаточно, чтобы восстановить работу web сервера.
Также  необходимо будет восстановить настройки php.ini и восстановить работу прекомпиляторов /акселераторов php

Для запуска web сервера и сайта можно использовать пакет MAMP, но это совсем не обязательно.

Можно запустить встроенный сервер Apache с помощью терминала и настроек операционной системы. В версии Mac OS X Lion 10.7 это делалось включением в системных настройках/общий доступ, но в версии 10.8 произошли изменения, которые требуют использования терминала.

Итак, приступим:

 Запускаем программу терминал (terminal) находящуюся по адресу:

/Applications/Utilities/Terminal если включен русский язык то /Applications/Utilities/Терминал

Самый простой путь, запустить Finder, нажать клавиши CMD+Shift+G и вставить данный адрес. Если все правильно запустится Терминал

набираем (копируем) команду

sudo apachectl start

Для выполнения данной команды может потребоваться пароль суперпользователя (тот же самый который требуется для установки программ). Его нужно ввести.

  Работаем с дисками на OS X при помощи «Дисковой Утилиты»

Эта команда запускает сервер apache на Mac OS X.

Следующая команда не является обязательной, но она показывает текущую версию сервера

httpd -v

Теперь проверим работоспособность сервера:

В браузере введем адрес http://localhost

В окне браузера появится

It works !

Сервер Apache корректно запустился, но сейчас сайты на компьютере находятся в корневой папке сервера apache, по адресу

/Library/WebServer/Documents/ 

и основным файлом является index.html.en

что не совсем удобно для дальнейшего использования. Для удобства применения сервера желательно откорректировать файл httpd.conf.

Для редактирования переходим в каталог:

/etc/apache2/ 

я предпочитаю это сделать через Finder с помощью нажатия клавиш CMD+Shift+G. Там будет файл: httpd.conf

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

Теперь его необходимо отредактировать, не всегда OS X позволяет отредактировать его в стандартном текстовом редакторе, но всегда можно сделать и отредактировать его копию и потом заменить файл. Можно спокойно редактировать в терминале с помощью встроенного редактора nano (работа в редакторе nano), но работать с ним не очень удобно.

cd /etc/apache2/

— перейти в нужную папку

sudo nano httpd.conf

-запустить редактор

Здесь требуется исправить следующие строки:

Найти строку:

#LoadModule php5_module libexec/apache2/libphp5.so

и удалить с нее комментарий, данная строка включает PHP на сервере apache

LoadModule php5_module libexec/apache2/libphp5.so

Дальше, ищем строку

DocumentRoot "/Library/WebServer/Documents"

и меняем её на

DocumentRoot "/Users/ИмяПользователя/sites"

где «ИмяПользователя» это имя пользователя в системе, так мы поменяли главную папку документов на сервере apache. Аналогично необходимо изменить данные еще в одной строке:

<Directory "/Library/WebServer/Documents">

на

<Directory "/Users/ИмяПользователя/sites">

Все! сохраняем сайт. Если делали в копии, то меняем «родной» файл.

  Локальный веб-сервер MAMP для Mac OS

Не забудьте проверить наличие папки sites в папке пользователя «ИмяПользователя»

Выполняем команду:

sudo apachectl restart

Данная команда перезапускает сервер apache (ее необходимо использовать при каждом изменении файлов настроек сервера). Проверяем работу, в адресной строке набираемhttp://localhost

Теперь должны увидеть содержимое папки sites. Если ничего не получилось, то восстанавливаем исходный файл httpd.conf из архивной копии или по адресу

/private/etc/apache2/original

Еще можно проверить синтаксические ошибки настроек командой

sudo apachectl -t

И повторяем процедуру повторно. В некоторых случаях необходимо сделать следующее:

В каталоге
cd /etc/apache2/users 
Создать файл username.conf, где username — это имя пользователя в mac os x

либо командами

cd /etc/apache2/users
sudo nano username.conf

Со следующим содержимым

    <Directory "/Users/username/Sites/">
        Options Indexes MultiViews
        AllowOverride All 
        Order allow,deny 
        Allow from all
    </Directory>

После этого необходимо исправить права на доступ к файлу username.conf

sudo chmod 644 username.conf
потом перезапустить сервер
sudo apachectl restart
В старых версиях  сайт должен быть доступен по адресу
http://localhost/~username/

Все! Сервер apache на Mac OS X должен работать и интерпретатор PHP запущен.

Если при проверке синтаксиса файлов настройки появляется ошибка

Could not reliably determine the server's fully qualified domain name

Необходимо в файл httpd.conf добавить строку

ServerName localhost

Команда для редактирования

        sudo nano /etc/apache2/httpd.conf

Если apache все-таки не запускается и не отвечает на запрос в браузере localhost , то имеет смысл посмотреть логи.
Сначала стоит взглянуть на системный журнал. Для этого запускаем программу «консоль» и отфильтровываем по слову apache.
Вполне возможно, что вы увидите следующее сообщение:

23.12.13 13:30:24,347 com.apple.launchd[1]: (org.apache.httpd) Throttling respawn: Will start in 10 seconds
23.12.13 13:30:34,431 com.apple.launchd[1]: (org.apache.httpd[1741]) Exited with code: 1
Это говорит о том, что системный агент launchd по какой-то причине не может корректно запустить apache. После этого в папке
/var/log/apache2/  открываем с помощью консоли файл  error_log (журнал событий apache и смотрим последние сообщения). Они подскажут, что у вас сделано неправильно.

Далее, для работы сайтов использующих CMS необходимо установить MySQL. Как это сделать описано здесь.

  Локальный веб-сервер MAMP для Mac OS

Можно установить ускоритель исполнения php APC

и  желательно настроить виртуальный хостинг httpd_vhosts_config

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here