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

Вступление

Стек FAMP, аналогичный стеку LAMP в Linux, представляет собой группу программного обеспечения с открытым исходным кодом, которое обычно устанавливается вместе, чтобы позволить серверу FreeBSD размещать динамические веб-сайты и веб-приложения. FAMP - это аббревиатура, обозначающая F reeBSD (операционная система), A pache (веб-сервер), M ySQL (сервер базы данных) и P HP (для обработки динамический контент PHP).

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

Предпосылки

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

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

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

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

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

sudo pkg install apache24

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

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

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

sudo sysrc apache24_enable=yes

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

sudo service apache24 start

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

http:///

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

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

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

Если вы используете DigitalOcean, вы можете посмотреть в панели управления IP-адрес вашего сервера. Вы также можете использовать службу метаданных DigitalOcean от самого сервера с помощью этой команды: + curl -w" \ n "http: // 169.254.169.254 / metadata / v1 / interfaces / public / 0 / ipv4 / address +.

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

ifconfig  | 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):
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]
New password:
Re-enter new password:
Password updated successfully!

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

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

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

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

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

Чтобы установить 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

Будет много выходных данных с одним полем с именем * Comment *, в котором будет объяснение функциональности, которую предоставляет модуль.

Например, чтобы узнать, что делает пакет + 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

Шаг четвертый - Настройка 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:///info.php

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

изображение: https: //assets.digitalocean.com/articles/freebsd_lamp/freebsd_info_php.png [FreeBSD info.php]

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

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

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

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

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

Заключение

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

Если вы заинтересованы в настройке WordPress в своем новом стеке FAMP, ознакомьтесь с этим руководством: https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-apache-on-freebsd-10. -1 [Как установить WordPress с Apache на FreeBSD 10.1].

Related