Поиск по сайту:

Как установить стек Apache, MySQL и PHP (FAMP) на FreeBSD 10.1


Введение

Стек FAMP, аналогичный стеку LAMP в Linux, представляет собой группу программного обеспечения с открытым исходным кодом, которое обычно устанавливается вместе, чтобы позволить серверу FreeBSD размещать динамические веб-сайты и веб-приложения. FAMP — это аббревиатура от FreeBSD (операционная система), Apache (веб-сервер), MySQL (сервер базы данных) и PHP (для обработки динамического содержимого PHP).

В этом руководстве мы установим стек FAMP на облачный сервер FreeBSD 10.1 с помощью pkg, менеджера пакетов FreeBSD.

Примечание. С 1 июля 2022 г. DigitalOcean больше не поддерживает создание новых капель FreeBSD через панель управления или API. Однако вы по-прежнему можете запускать капли FreeBSD, используя собственный образ. Узнайте, как импортировать собственное изображение в DigitalOcean, следуя нашей документации по продукту.

Предпосылки

Прежде чем приступить к этому руководству, у вас должен быть сервер FreeBSD 10.1. Кроме того, вы должны подключиться к вашему серверу FreeBSD как пользователь с привилегиями суперпользователя (т. е. вам разрешено использовать sudo или измениться на пользователя root).

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

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

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

Чтобы установить Apache 2.4 с помощью pkg, используйте эту команду:

sudo pkg install apache24

Введите y в запросе подтверждения.

Это устанавливает Apache и его зависимости.

Чтобы включить Apache как службу, добавьте apache24_enable=YES в файл /etc/rc.conf. Мы будем использовать эту команду sysrc, чтобы сделать это:

sudo sysrc apache24_enable=yes

Теперь запустите Апач:

sudo service apache24 start

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

http://your_server_IP_address/

Вы увидите стандартную веб-страницу FreeBSD Apache, предназначенную для тестирования. Он должен сказать: \Это работает!, что указывает на то, что ваш веб-сервер установлен правильно.

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

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

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

ifconfig vtnet0 | grep "inet " | awk '{ print $2 }'

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

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

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

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

Чтобы установить MySQL 5.6 с помощью pkg, используйте эту команду:

sudo pkg install mysql56-server

Введите y в запросе подтверждения.

Это устанавливает сервер MySQL и клиентские пакеты.

Чтобы включить сервер MySQL как службу, добавьте mysql_enable=YES в файл /etc/rc.conf. Эта команда sysrc сделает именно это:

sudo sysrc mysql_enable=yes

Теперь запустите сервер MySQL:

sudo service mysql-server start

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

sudo mysql_secure_installation

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

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

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

Set root password? [Y/n] Y
New password: password
Re-enter new password: password
Password updated successfully!

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

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

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

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

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

Чтобы установить PHP 5.6 с помощью pkg, выполните следующую команду:

sudo pkg install mod_php56 php56-mysql php56-mysqli

Введите y в запросе подтверждения. При этом устанавливаются пакеты php56, mod_php56, php56-mysql и php56-mysqli.

Теперь скопируйте образец файла конфигурации PHP на место с помощью этой команды:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Теперь запустите команду rehash, чтобы восстановить системную кэшированную информацию об установленных исполняемых файлах:

rehash

Перед использованием PHP необходимо настроить его для работы с Apache.

Установите модули PHP (необязательно)

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

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

pkg search php56

Результатом будут в основном модули PHP 5.6, которые вы можете установить. :

mod_php56-5.6.3
php56-5.6.3
php56-bcmath-5.6.3
php56-bz2-5.6.3
php56-calendar-5.6.3
php56-ctype-5.6.3
php56-curl-5.6.3
php56-dba-5.6.3
php56-dom-5.6.3
php56-exif-5.6.3
...

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

pkg search -f package_name

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

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

pkg search -f php56-calendar

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

php56-calendar-5.6.3
Name           : php56-calendar
Version        : 5.6.3
...
Comment        : The calendar shared extension for php
...

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

Например, если мы решим, что php56-calendar — это то, что нам нужно, мы можем ввести:

sudo pkg install php56-calendar

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

sudo pkg install package1 package2 ...

Шаг четвертый — настройте Apache для использования модуля PHP

Прежде чем Apache начнет обрабатывать PHP-страницы, мы должны настроить его для использования mod_php.

Откройте файл конфигурации Apache:

sudo vi /usr/local/etc/apache24/Includes/php.conf

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

<IfModule dir_module>
    DirectoryIndex index.php index.html

Далее мы настроим Apache для обработки запрошенных файлов PHP процессором PHP. Добавьте эти строки в конец файла:

    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
</IfModule>

Сохранить и выйти.

Теперь перезапустите Apache, чтобы изменения вступили в силу:

sudo service apache24 restart

На этом этапе ваш стек FAMP установлен и настроен. Теперь давайте проверим вашу настройку PHP.

Шаг пятый — протестируйте обработку PHP

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

Мы назовем этот скрипт info.php. Чтобы Apache мог найти файл и правильно его обслужить, он должен быть сохранен в очень определенном каталоге DocumentRoot, где Apache будет искать файлы, когда пользователь обращается к веб-серверу. Расположение DocumentRoot указано в файле конфигурации Apache, который мы изменили ранее (/usr/local/etc/apache24/httpd.conf).

По умолчанию DocumentRoot имеет значение /usr/local/www/apache24/data. Мы можем создать файл info.php в этом месте, набрав:

sudo vi /usr/local/www/apache24/data/info.php

Это откроет пустой файл. Вставьте этот код PHP в файл:

<?php phpinfo(); ?>

Сохранить и выйти.

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

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

http://your_server_IP_address/info.php

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

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

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

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

sudo rm /usr/local/www/apache24/data/info.php

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

Заключение

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

Если вы заинтересованы в настройке WordPress в своем новом стеке FAMP, ознакомьтесь с этим руководством: Как установить WordPress с Apache на FreeBSD 10.1.