Установка на CentOS 7 — Apache MySQL PHP (LAMP)

Установка на CentOS 7 — Apache MySQL PHP (LAMP)

Введение

Стек «LAMP» — это группа программного обеспечения с открытым исходным кодом, которое обычно устанавливается вместе, чтобы сервер мог размещать динамические веб-сайты и веб-приложения. Этот термин на самом деле является аббревиатурой, обозначающей операционную систему L inux с веб-сервером A pache. Данные сайта хранятся в М базы данных ySQL ( с использованием MariaDB), и динамический контент обрабатываются P HP.

В этом руководстве мы установим стек LAMP на CentOS 7 VPS. CentOS выполнит наше первое требование: операционная система Linux.

Перед тем, как вы начнете читать это руководство, вы должны иметь отдельную учетную запись пользователя без полномочий root на вашем сервере. Вы можете узнать, как это сделать, выполнив шаги 1-4 в начальной настройке сервера для CentOS 7

Шаг первый — установите Apache

Веб-сервер Apache в настоящее время является самым популярным веб-сервером в мире, что делает его отличным выбором по умолчанию для размещения веб-сайта.

Мы можем легко установить Apache с помощью диспетчера пакетов CentOS yum. Менеджер пакетов позволяет нам безболезненно устанавливать большую часть программного обеспечения из репозитория, поддерживаемого CentOS. 

Для наших целей мы можем начать с ввода этих команд:

sudo yum install httpd

Поскольку мы используем sudoкоманду, эти операции выполняются с привилегиями root. Он попросит вас ввести пароль обычного пользователя, чтобы подтвердить ваши намерения.

После этого ваш веб-сервер будет установлен.

После его установки вы можете запустить Apache на своем VPS:

sudo systemctl start httpd.service

Вы можете сразу же выполнить выборочную проверку, чтобы убедиться, что все прошло по плану, посетив общедоступный IP-адрес вашего сервера в своем веб-браузере (см. Примечание под следующим заголовком, чтобы узнать, какой у вас общедоступный IP-адрес, если у вас нет этой информации. уже):

http://your_server_IP_address/

Вы увидите веб-страницу CentOS 7 Apache по умолчанию, которая предназначена для информационных и тестовых целей. Это должно выглядеть примерно так:

CentOS 7 Apache по умолчанию

Если вы видите эту страницу, значит, ваш веб-сервер теперь установлен правильно.

Последнее, что вам нужно сделать, это включить запуск Apache при загрузке. Для этого используйте следующую команду:

sudo systemctl enable httpd.service

Как узнать публичный IP-адрес вашего сервера

Если вы не знаете, какой у вашего сервера публичный IP-адрес, вы можете найти его несколькими способами. Обычно это адрес, который вы используете для подключения к вашему серверу через SSH.

Вы можете найти это несколькими способами из командной строки. Во-первых, вы можете использовать iproute2инструменты, чтобы получить свой адрес, набрав следующее:

ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

Это вернет вам одну или две строки. Оба адреса являются правильными, но ваш компьютер может использовать только один из них, поэтому не стесняйтесь пробовать каждый из них.

Альтернативный метод — использовать стороннюю организацию, чтобы рассказать вам, как она видит ваш сервер. Вы можете сделать это, спросив конкретный сервер, какой у вас IP-адрес:

curl http://icanhazip.com

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

Шаг второй — установите MySQL (MariaDB)

Теперь, когда наш веб-сервер запущен и работает, пришло время установить MariaDB, замену MySQL. MariaDB — это форк системы управления реляционными базами данных MySQL, разработанный сообществом. По сути, он будет организовывать и предоставлять доступ к базам данных, в которых наш сайт может хранить информацию.

Опять же, мы можем использовать его yumдля приобретения и установки нашего программного обеспечения. На этот раз мы также установим некоторые другие «вспомогательные» пакеты, которые помогут нам заставить наши компоненты взаимодействовать друг с другом:

sudo yum install mariadb-server mariadb

Когда установка будет завершена, нам нужно запустить MariaDB с помощью следующей команды:

sudo systemctl start mariadb

Теперь, когда наша база данных MySQL запущена, мы хотим запустить простой сценарий безопасности, который удалит некоторые опасные настройки по умолчанию и немного заблокирует доступ к нашей системе базы данных. Запустите интерактивный скрипт, запустив:

sudo mysql_secure_installation

В приглашении вас попросят ввести текущий пароль root. Поскольку вы только что установили MySQL, скорее всего, у вас его не будет, поэтому оставьте поле пустым, нажав клавишу ВВОД. Затем вас спросят, хотите ли вы установить пароль root. Идите вперед и войдите Yи следуйте инструкциям:

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorization.

New password: password
Re-enter new password: password
Password updated successfully!
Reloading privilege tables..
 ... Success!

Для остальных вопросов вы должны просто нажимать клавишу «ENTER» в каждом запросе, чтобы принять значения по умолчанию. Это приведет к удалению некоторых примеров пользователей и баз данных, отключению удаленного входа в систему с root-правами и загрузке этих новых правил, чтобы MySQL немедленно учитывал внесенные нами изменения.

Последнее, что вам нужно сделать, это разрешить MariaDB запускаться при загрузке. Для этого используйте следующую команду:

sudo systemctl enable mariadb.service

На этом этапе ваша система баз данных настроена, и мы можем двигаться дальше.

Шаг третий — установка PHP

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

Мы снова можем использовать yumсистему для установки наших компонентов. Мы также собираемся включить пакет php-mysql:

sudo yum install php php-mysql

Это должно без проблем установить PHP. Нам нужно перезапустить веб-сервер Apache, чтобы он работал с PHP. Вы можете сделать это, набрав следующее:

sudo systemctl restart httpd.service

Установить модули PHP

Для расширения функциональности PHP мы можем дополнительно установить некоторые дополнительные модули.

Чтобы увидеть доступные параметры для модулей и библиотек PHP, вы можете ввести это в свою систему:

yum search php-

Результатом являются все необязательные компоненты, которые вы можете установить. Он даст вам краткое описание для каждого:

php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
php-cli.x86_64 : Command-line interface for PHP
php-common.x86_64 : Common files for PHP
php-dba.x86_64 : A database abstraction layer module for PHP applications
php-devel.x86_64 : Files needed for building PHP extensions
php-embedded.x86_64 : PHP library for embedding in applications
php-enchant.x86_64 : Enchant spelling extension for PHP applications
php-fpm.x86_64 : PHP FastCGI Process Manager
php-gd.x86_64 : A module for PHP applications for using the gd graphics library
. . .

Чтобы получить дополнительную информацию о том, что делает каждый модуль, вы можете либо поискать в Интернете, либо просмотреть длинное описание в пакете, набрав:

yum info package_name

Будет много выходных данных, с одним вызываемым полем, Descriptionкоторое будет содержать более подробное объяснение функциональности, предоставляемой модулем.

Например, чтобы узнать, что php-fpmделает модуль, можно ввести следующее:

yum info php-fpm

Наряду с большим количеством другой информации вы найдете что-то похожее на это:

. . .
Summary     : PHP FastCGI Process Manager
URL         : http://www.php.net/
License     : PHP and Zend and BSD
Description : PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI
            : implementation with some additional features useful for sites of
            : any size, especially busier sites.

Если после исследования вы решите, что хотите установить пакет, вы можете сделать это с помощью yum installкоманды, как мы делали это для другого нашего программного обеспечения.

Если мы решили, что php-fpmэто то, что нам нужно, мы могли бы ввести:

sudo yum install php-fpm

Если вы хотите установить более одного модуля, вы можете сделать это, перечислив каждый из них, разделенный пробелом, после yum installкоманды, например:

sudo yum install package1 package2 ...

На этом этапе ваш стек LAMP установлен и настроен. Тем не менее, мы все равно должны протестировать наш PHP.

Шаг четвертый — протестируйте обработку PHP на вашем веб-сервере

Чтобы проверить, правильно ли настроена наша система для PHP, мы можем создать очень простой скрипт PHP.

Назовем этот скрипт info.php. Чтобы Apache мог найти файл и правильно его обслужить, он должен быть сохранен в очень специфическом каталоге, который называется «корень сети».

В CentOS 7 этот каталог находится по адресу /var/www/html/. Мы можем создать файл в этом месте, набрав:

sudo vi /var/www/html/info.php

Откроется пустой файл. Мы хотим поместить в файл следующий текст, который является допустимым кодом PHP:

<?php phpinfo(); ?>

Когда вы закончите, сохраните и закройте файл.

Если вы используете брандмауэр, выполните следующие команды, чтобы разрешить трафик HTTP и HTTPS:

sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Теперь мы можем проверить, может ли наш веб-сервер правильно отображать контент, созданный сценарием PHP. Чтобы попробовать это, нам просто нужно посетить эту страницу в нашем веб-браузере. Вам снова понадобится общедоступный IP-адрес вашего сервера.

Адрес, который вы хотите посетить, будет:

http://your_server_IP_address/info.php

Страница, на которую вы перейдете, должна выглядеть примерно так:

Информация о PHP по умолчанию для CentOS 7

Эта страница в основном дает вам информацию о вашем сервере с точки зрения PHP. Это полезно для отладки и проверки правильности применения ваших настроек.

Если это было успешно, значит, ваш PHP работает должным образом.

Вероятно, вы захотите удалить этот файл после этого теста, потому что он действительно может предоставить информацию о вашем сервере неавторизованным пользователям. Для этого вы можете ввести это:

sudo rm /var/www/html/info.php

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

Вывод

Теперь, когда у вас установлен стек LAMP, у вас есть много вариантов, что делать дальше. По сути, вы установили платформу, которая позволит вам устанавливать большинство типов веб-сайтов и веб-программного обеспечения на свой сервер.

0
Как изменить кодировку для всех таблиц в MySQL Настройка iptables в CentOS 7

Комментариев нет

Нет комментариев

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *