Если вас интересует, как установить сервер на Windows, то вам сюда "Установка Apache, PHP, MySQL, phpMyAdmin на Windows".

Apache, MariaDB/MySQL и PHP — это популярная серверная связка, которая используется для создания динамических веб-сайтов и веб-приложений. На платформах Linux эту связку называют акронимом LAMP (по первым буквам слов Linux, Apache, MySQL и PHP). Т.е. связка LAMP состоит из Apache (сам сервер HTTP), баз данных MariaDB или MySQL и PHP, Perl или Python — серверных языков программирования. Возможные разные варианты, которые обозначаются разными акронимами: LEMP (nginx, MySQL, PHP), LAPP (Apache, PostgreSQL, PHP), LLPR (Lighttpd, PostgreSQL, Ruby on Rails) и так далее.

В этой инструкции я опишу как установить и настроить связку Apache, MariaDB/MySQL и PHP (LAMP) на сервер CentOS. Эта инструкция применима к платформам CentOS 6 а также CentOS 7.

1. Apache HTTP Server

На этом шаге давайте установим Apache HTTP server на CentOS. После мы также выполним базовую конфигурацию сервера Apache, такую как добавим службу Apache в список автозапуска и откроем HTTP в файерволе.

Установка сервера Apache HTTP

Запуск сервера Apache HTTP и настройка файервола

В CentOS 7:

В CentOS 6:

Проверка сервера Apache HTTP

Чтобы протестировать установку, проверяем, запущен ли и выполняется ли успешно демон httpd.

В CentOS 7:

15067546624_b8ecd04910_o

В CentOS 6:

После подтверждения статуса httpd, откройте веб-браузер и перейдите http://<ip-адрес-веб-вервера> чтобы увидеть загрузку дефолтной веб-страницы Apache. Этот скриншот внизу показывает дефолтную веб-страницу на CentOS 6 (192.168.1.8) и CentOS 7 (192.168.1.11).

15501627019_4683010830_o

Обратите внимание, что по умолчанию корневой каталог httpd — это /var/www/html на обоих CentOS 6 и 7. Двигаемя дальше.

2. MariaDB/MySQL

Следующий шаг — это установить базу данных для нашего сервера, нам на выбор есть два варианта: MySQL и MariaDB. В то время как CentOS/RHEL 6 распространяется с пакетами сервер/клиент MySQL, CentOS/RHEL 7 отошла от MySQL, и вместо неё предлагает MariaDB как базу данных по умолчанию, MariaDB — это форк MySQL разрабатываемый сообществом.

Ниже как установить сервер MariaDB/MySQL и настроить автоматический старт при загрузке.

На CentOS 7:

На CentOS 6:

Установка пакета сервер/клиент MySQL и запуск сервера MySQL делается так.

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

В качестве меры предосторожности, запустите следующий дополнительный скрипт, который включён в серверный пакет MariaDB/MySQL.

15644566071_36908c00f3_o

Этот скрипт переконфигурирует базу данных сервера в целях упрочнения сервера. Например, он заменит (пустой) пароль рута (root), удалит анонимного пользователя, отключит удалённую авторизацию рута и удалит дефолтную тестовую базу данных.

3. PHP

Последний шаг настройки LAMP — это установка PHP, скриптового языка на стороне сервера, который отвечает за динамическое создание веб-страниц для пользователей. Для минимальной работы LAMP требуется установка следующих двух паетов.

Этот пакет PHP добавляет поддержку сервера Apache HTTP и пакет php-mysql позволяет приложениям PHP иметь доступ к серверу MariaDB/MySQL. Кроме этих двух обязательных пакетов, есть много других полезных модулей PHP, которые можно установить в зависимости от ваших потребностей. Например:

  • php-gd: необходим для работы приложений PHP с изображениями.
  • php-odbc: необходим для доступа приложений PHP к базе данных ODBC.
  • php-pecl-memcache: необходим когда настроен демон кэша Memcached.
  • php-pgsql: необходим для доступа к базе данных PostgreSQL в приложениях PHP.
  • php-snmp: необходим для запросов к устройствам под управлением SNMP в приложениях PHP.
  • php-xml: необходим для разбора XML в приложениях PHP.
  • php-soap: необходим для поддержки протокола SOAP в приложениях PHP.
  • php-xmlrpc: необходим для поддержки протокола XML-RPC в приложениях PHP.

Вы можете получить полный список доступных модулей PHP выполнив:

Далее давайте изменить временную зону по умолчанию, которую используют приложения PHP. Вам будет нужно найти вашу временную зону используя команду tzselect.

15068126933_ea64d1616d_o

После ответа на серию вопросов, tzselect выведет строку с вашей временной зоной (например, "America/New_York"). Откройте файл /etc/php.ini текстовым редактором и добавьте следующие строки.

Не забудьте перезапустить httpd после установки PHP.

В CentOS 7:

В CentOS 6:

Наконец, давайте проверим, работает ли PHP должным образом. Для этого используйте следующую команду и проверьте корректен ли вывод phpinfo().

15502096038_04424d7602_o

Как только вы верифицировали вывод командной строки PHP, давайте создадим PHP файл и верифицируем, что PHP файл успешно загружается сервером Apache HTTP.

Перейдите http://<ip-адрес-веб-сервера>/test.php в вашем браузере. Вы должны увидеть следующий выход.

15689083192_6112673ce9_o

Теперь вы успешно настроили связку LAMP!

Похожие темы

Автоматическая инъекция SQL и инструмент захвата б... Перевод: Анна Давыдова Источник: n0where.net Sqlmap является открытым инструментом для проведения пентестов, который автоматизирует процесс обнаруже...
Double Action — бесплатный онлайн шутер от первого... Double Action это новый шутер, основанный на движке Source и свободно распространяемый в Steam. Он очень весёлый для игры, включает некоторые хитрые...
Гайд по Metasploitable Руководство по эксплуатации Metasploitable Metasploitable - Ubuntu 8.04, установленным на VMWare 6.5 с включенным в него пакетом уязвимостей, кот...
Новости софта от 17 сентября 2014 года (phpMyAdmin... Обновились все поддерживаемые линейки phpMyAdmin 4.0.10.3, 4.1.14.4 и 4.2.8.1. Обновление минорное и исправляет один единственный баг, который относит...
Мод Wifite с поддержкой Pixiewps Если у вас какие-либо проблемы с беспроводными устройствами, то следует ознакомиться со статьёй «Лучшие совместимые с Kali Linux USB Wi-Fi ада...