Сервис для
сео - оптимизаторов

Найди ошибки на сайте
Ошибки мешают продвижению сайта
Исправь ошибки на сайте
Сайт без ошибок продвигать легче
Получи новых клиентов
Новые клиенты принесут больше прибыль

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

  1. Требования
  2. Шаг 1: Установите Apache на FreeBSD
  3. Шаг 2. Установите PHP на FreeBSD
  4. Шаг 3: Установите MariaDB на FreeBSD
  5. Пример вывода

В этом руководстве будет описано, как установить и настроить FBAMP в операционной системе FreeBSD, которая аналогична стеку LAMP в Linux. FBAMP - это аббревиатура, обозначающая набор программного обеспечения, основанного на ОС FreeBSD, HTTP- сервере Apache , самом популярном веб-сервере с открытым исходным кодом в Интернете, системе управления реляционными базами данных MariaDB ( RDBMS ), форке движка базы данных MySQL и PHP- сервере. -боковая сторона.

Требования

  1. Свежая установка FreeBSD
  2. Начальные настройки FreeBSD
  3. Прямой консольный доступ или SSH в случае удаленного подключения к FreeBSD.
  4. Статический IP-адрес, настроенный на сетевом интерфейсе.

Шаг 1: Установите Apache на FreeBSD

1. Первый сервис, который мы установим, - это сервер Apache HTTP . По умолчанию FreeBSD предлагает несколько версий с различными рабочими модулями времени выполнения для веб-сервера Apache.

Версии предварительно скомпилированы в двоичный пакет и предоставлены репозиториями FreeBSD PORTS . Чтобы отобразить все двоичные файлы пакетов Apache, предоставляемые PORTS , введите следующую команду.

# ls / usr / ports / www / | grep apache # ls / usr / ports / www / |  grep apache

Перечислите пакеты Apache на FreeBSD

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

# pkg search apache2 # pkg search apache2

Поиск пакетов Apache во FreeBSD

2. Затем установите последнюю версию HTTP-сервера Apache со всеми необходимыми модулями, введя следующую команду.

# pkg установить apache24 # pkg установить apache24

Установите Apache на FreeBSD

3. После того, как веб-сервер Apache был установлен в системе, введите следующую команду, чтобы включить общесистемный демон в FreeBSD.

# sysrc apache24_enable = "yes"

Альтернативный способ включения демона Apache - вручную отредактировать и добавить строку apache24_enable = "yes" в файле /etc/rc.conf, как показано на снимке экрана ниже.

conf, как показано на снимке экрана ниже

Включить Apache System Wide на FreeBSD

4. Наконец, чтобы проверить, правильно ли работает веб-сервер, запустите демон Apache, выполнив приведенную ниже команду, и перейдите на веб-страницу по умолчанию, указав в браузере IP-адрес FQDN вашего сервера (http: // IP-orFQDN), как показано ниже. на скриншоте ниже.

# сервис apache24 start # сервис apache24 start

Запустите сервис Apache

Проверьте страницу Apache

Каталог webroot по умолчанию веб-сервера Apache во FreeBSD 11.x находится в каталоге / usr / local / www / apache24 / data / system path. Там вы найдете небольшой файл index.html, который вы можете редактировать по своему усмотрению .

Apache DocumentRoot на FreeBSD

Шаг 2. Установите PHP на FreeBSD

5. FreeBSD 11.x предлагает несколько версий интерпретируемого PHP серверного языка, упакованного в предварительно собранные двоичные файлы. Чтобы получить список всех доступных пакетов версий PHP, предоставляемых репозиториями FreeBSD Ports, введите следующую команду.

# ls / usr / ports / lang / | grep php # ls / usr / ports / lang / |  grep php

Перечислите версии PHP в FreeBSD

Альтернативный метод поиска всех доступных версий PHP- пакетов FreeBSD заключается в запуске команды ниже.

# pkg search -o php # pkg search -o php

Поиск версий PHP во FreeBSD

6. Чтобы найти все доступные двоичные файлы, предоставляемые FreeBSD для конкретной версии PHP (версии 5 или 7 в настоящее время), выполните следующие команды. использование меньше команд сузить и перемещаться по выходу.

# pkg search php5 | less # pkg search php7 # pkg search php5 | less # pkg search php7

Перечислите пакеты PHP 5 на FreeBSD

Перечислите пакеты PHP 5 на FreeBSD

Перечислите пакеты PHP 7 на FreeBSD

7. Чтобы более точно определить, какие модули предоставляет пользовательская версия PHP, выполните следующую команду, как описано ниже, чтобы отобразить все доступные модули для версии PHP 7.1 .

# pkg search php71 # pkg search php71

Список PHP модулей на FreeBSD

8. В этом руководстве мы установим релиз PHP 7.1 для нашего стека FBAMP . Выполните следующую команду, чтобы установить PHP с некоторыми из наиболее важных модулей, необходимых для обычной установки CMS.

# pkg install php71 mod_php71 php71-mbstring php71-mcrypt php71-zlib php71-curl php71-gd php71-json

9. Далее нам нужно создать файл конфигурации php.conf для веб-сервера Apache в / usr / local / etc / apache24 / Includes / system path со следующим содержимым.

# nano /usr/local/etc/apache24/Includes/php.conf

Добавьте следующие строки в файл php.conf .

<IfModule dir_module> DirectoryIndex index.php index.html <FilesMatch "\ .php $"> Приложение SetHandler / x-httpd-php </ FilesMatch> <FilesMatch "\ .phps $"> Приложение SetHandler / x-httpd-php- источник </ FilesMatch> </ IfModule> <IfModule dir_module> DirectoryIndex index

Настройте PHP для Apache на FreeBSD

10. Чтобы проверить, правильно ли работает шлюз PHP с веб-сервером Apache, создайте файл PHP info.php в каталоге / usr / local / www / apache24 / data / system , который является корневым путем веб-документа Apache по умолчанию. веб сервер.

# echo '<? php phpinfo (); ?> '| tee -a /usr/local/www/apache24/data/info.php

Перезапустите демон Apache, чтобы применить изменения.

# service apache24 restart

Затем откройте следующий URI в браузере, чтобы просмотреть сводку PHP.

Http: //IP-or-FQDN/info.php Http: //IP-or-FQDN/info

Проверьте модули PHP на FreeBSD

11. Чтобы активировать файл конфигурации PHP ini для производства, выполните следующие команды. Вы можете изменить производственный файл php.ini , чтобы изменить различные настройки PHP в вашем стеке FBAMP.

# cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.bakup # ln -s /usr/local/etc/php.ini-production / usr / local / etc /php.ini

Шаг 3: Установите MariaDB на FreeBSD

12. Последний отсутствующий компонент для нашего стека FBAMP - сервер базы данных MySQL . FreeBSD 11.x предлагает более 1000 пакетов для разнообразных баз данных.

Чтобы отобразить, какие компоненты доступны для баз данных MariaDB или MySQL , выполните следующие команды. В этом руководстве мы установим базу данных MariaDB поверх MySQL (которая в настоящее время активно принадлежит и развивается Oracle).

# ls -al / usr / ports / database / | grep mariadb # pkg search -o mariadb # ls -al / usr / ports / database / | grep mysql # pkg search -o mysql5 # ls -al / usr / ports / database / |  grep mariadb # pkg search -o mariadb # ls -al / usr / ports / database / |  grep mysql # pkg search -o mysql5

Перечислите версии MariaDB на FreeBSD

Поиск версий MariaDB на FreeBSD

13. В этом руководстве мы установим последнюю версию сервера базы данных MariaDB во FreeBSD, которая в настоящее время представлена выпуском двоичного пакета mariadb102 .

Выполните следующую команду для установки сервера и клиента MariaDB и необходимого модуля PHP 7.1, необходимого для доступа к базе данных через серверный шлюз Apache.

# pkg установить mariadb102-сервер mariadb102-клиент php71-mysqli

14. Затем включите общесистемный сервер MariaDB и запустите демон базы данных, выполнив следующие команды.

# sysrc mysql_enable = "yes" # запуск сервиса mysql-server

15. Для защиты базы данных запустите скрипт mysql_secure_installation . Используйте приведенную ниже выдержку из скрипта, чтобы укрепить MariaDB.

# / usr / local / bin / mysql_secure_installation

Пример вывода

Вывод сценария безопасной установки MySQL

ПРИМЕЧАНИЕ: ЗАПУСК ВСЕХ ЧАСТЕЙ ЭТОГО СКРИПТА РЕКОМЕНДУЕТСЯ ДЛЯ ВСЕХ СЕРВЕРОВ MariaDB В ПРОИЗВОДСТВЕННОМ ИСПОЛЬЗОВАНИИ! ПОЖАЛУЙСТА, ВНИМАТЕЛЬНО ПРОЧИТАЙТЕ КАЖДЫЙ ШАГ! Чтобы войти в MariaDB для его защиты, нам понадобится текущий пароль для пользователя root. Если вы только что установили MariaDB и еще не установили пароль root, пароль будет пустым, поэтому вам просто нужно нажать здесь. Введите текущий пароль для пользователя root (введите «нет»): ОК, успешно использованный пароль, переходите к следующему ... Установка пароля пользователя root гарантирует, что никто не сможет войти в систему пользователя root MariaDB без соответствующей авторизации. Установить пароль root? [Y / n] y Новый пароль: введите новый пароль еще раз: Пароль успешно обновлен! Перезагрузка таблиц привилегий .. ... Успех! По умолчанию установка MariaDB имеет анонимного пользователя, что позволяет любому входить в MariaDB без необходимости создания учетной записи пользователя. Это предназначено только для тестирования, и чтобы установка прошла более гладко. Вы должны удалить их, прежде чем переходить в производственную среду. Удалить анонимных пользователей? [Да / Нет] у ... Удачи! Обычно пользователю root разрешается подключаться только с «localhost». Это гарантирует, что кто-то не сможет угадать пароль root от сети. Запретить вход в систему root удаленно? [Да / Нет] у ... Удачи! По умолчанию MariaDB поставляется с базой данных «test», доступ к которой может получить каждый. Это также предназначено только для тестирования и должно быть удалено перед переходом в производственную среду. Удалить тестовую базу данных и получить к ней доступ? [Y / n] y - Удаление тестовой базы данных ... ... Успех! - Удаление привилегий на тестовой базе данных ... ... Успех! Перезагрузка таблиц привилегий гарантирует, что все внесенные изменения вступят в силу немедленно. Перезагрузить таблицы привилегий сейчас? [Да / Нет] у ... Удачи! Уборка ... Все готово! Если вы выполнили все вышеперечисленные шаги, ваша установка MariaDB теперь должна быть безопасной. Спасибо за использование MariaDB!

16. По умолчанию демон MariaDB прослушивает сетевые подключения вне локального хоста через порт 3306 / TCP . Бежать NetStat , Lsof или команду sockstat для получения состояния сокета MariaDB. Эта конфигурация опасна и подвергает службу внешним сетевым атакам.

# lsof -i4 -i6 # sockstat -4 -6 # lsof -i4 -i6 # sockstat -4 -6

Проверьте порт MariaDB

17. Если вам не нужен удаленный доступ к MariaDB, убедитесь, что демон MariaDB прослушивает только localhost, выполнив приведенную ниже команду. Затем перезапустите сервис MariaDB, чтобы применить изменения.

# sysrc mysql_args = "- bind-address = 127.0.0.1" # перезапуск mysql-сервера службы или # /usr/local/etc/rc.d/mysql-server restart

18. Опять беги NetStat , Lsof или команду sockstat для вывода списка сетевых сокетов MariaDB. Теперь сокет должен связываться и прослушивать localhost, как показано на рисунке ниже.

# lsof -i4 | grep mysql # netstat -an | grep 3306 # sockstat -4 | grep 3306 # lsof -i4 |  grep mysql # netstat -an |  grep 3306 # sockstat -4 |  grep 3306

Проверьте MariaDB Прослушивание на Localhost

19. Чтобы проверить подключение базы данных MariaDB из консоли, введите следующую команду. В командной строке введите пароль root MySQL, и на экране консоли отобразится список баз данных по умолчанию, как показано на рисунке ниже.

# mysql -u root -p -e "показать базы данных" # mysql -u root -p -e показать базы данных

Список баз данных MySQL

Это все! Вы успешно установили веб-сервер Apache с базой данных MariaDB и интерпретатором PHP во FreeBSD. Теперь вы можете начать развертывание веб-сайта WordPress в кратчайшие сроки.

В следующем уроке мы обсудим некоторые продвинутые темы FPBAMP, такие как, как включить и создать виртуальные хосты Apache, включить модуль перезаписи, требуемый для файла .htaccess, для правильной работы и как защитить соединения Apache, используя самоподписанный сертификат или бесплатный сертификат. Сертификат, предлагаемый организацией Let's Encrypt.

Echo '<?
Php phpinfo (); ?
Установить пароль root?
Удалить анонимных пользователей?
Запретить вход в систему root удаленно?
Удалить тестовую базу данных и получить к ней доступ?
Перезагрузить таблицы привилегий сейчас?