Вступление
Стек 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].