Спонсор публикаций HOSTLAND.RU

Hostland.RU уже более 10 лет является профессионалом в сфере предоставления виртуального хостинга и целого ряда сопутствующих услуг. Мы отвечаем за качество нашей работы.

Если вас интересует, как установить сервер на 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


Спонсор публикаций BlackDiver

Обучение тестированию на проникновение  - Обучению тестированию на проникновение от BlackDiver. Базовый курс

Этот скрипт переконфигурирует базу данных сервера в целях упрочнения сервера. Например, он заменит (пустой) пароль рута (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!


Спонсор публикаций Cyber-512

Готовим специалиста в области ИБ  - Воспитаем специалиста в области ИБ с нуля до начального уровня. После обучения сможете оказывать услуги по проведению тестирования на проникновение ( легальный хакинг )

Похожие темы

Инструкция по установке Tails с возможностью сохра... Что такое Tails? Tails — это дистрибутив Linux, главный приоритет авторов при его создании — конфиденциальность пользователей. Все с...
Установка The Elder Scrolls V: Skyrim под Linux и ... Возрождение эпической фантазии Следующая часть крайне долгожданной саги Elder Scrolls приходит от создателей Игры года 2006 и 2008 годов Bethes...
Установка WPScan на Ubuntu (Mint) VPS WPScan — это сканер уязвимостей WordPress. Вы можете использовать его для выявления уязвимых тем или плагинов WordPress на вашем веб-сайте. Се...
Метод ExecuteScalar и база данных Mysql... Mysql метод ExecuteScalar Метод ExecuteScalar класса MySqlCommand обычно используется в том случаи, когда необходимо выполнить запрос к базе данных M...
Эмуляция сети из нескольких компьютеров на одном к... Эта инструкция небольшая, но очень полезная. Она пригодится: тестировщикам на проникновение и хакерам: для сканирования с одной операционной си...