• Ввойдите на сайт >>>

Статьи

Разверните WordPress поверх FAMP в FreeBSD 11.1

  1. Шаг 1 - Установите MariaDB
  2. Шаг 2 - Установите веб-сервер Apache
  3. Шаг 3 - Установите PHP
  4. Шаг 4 - Установите WordPress

Это руководство покажет, как установить и настроить наиболее популярную CMS с открытым исходным кодом, используемую в Интернете, WordPress, поверх FAMP в последней версии FreeBSD 11.x. FAMP - это аббревиатура, которая описывает следующий пакет программного обеспечения: F reeBSD 11.1 Unix-подобная операционная система, HTTP-сервер pache, один из самых популярных веб-серверов с открытым исходным кодом в Интернете, M ariaDB RDBMS (система управления реляционными базами данных), которая является форком движка базы данных MySQL и языка программирования P HP на стороне сервера.

ТРЕБОВАНИЯ:

  • Установка FreeBSD 11.x выполнена с нуля, или в системе не было установлено предыдущее программное обеспечение FAMP.
  • Сетевая карта настроена со статическим IP-адресом.
  • SSH-сервер установлен и настроен для удаленного доступа или прямого доступа к консоли командной строки сервера.
  • Желательно зарегистрированное доменное имя (не обязательно в этом руководстве, потому что мы будем использовать статический IP-адрес сервера для посещения веб-сайта).
  • Учетная запись sudo на сервере, настроенном с правами root или прямым доступом к учетной записи root.

Шаг 1 - Установите MariaDB

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

загрузить freebsd-update загрузить freebsd-update установить pkg обновить pkg

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

pkg установить bash bash_completion nano

Nano - это популярный редактор командной строки Linux. В FreeBSD ee является редактором файлов по умолчанию. Редактор Vi также установлен по умолчанию во FreeBSD.

Чтобы развернуть веб-сайт Wordpress на сервере, абсолютно необходимо подключиться к реляционной базе данных. MySQL / MariaDB - одна из наиболее часто используемых СУБД в сочетании с Wordpress. Итак, первым компонентом, который нужно установить в нашем стеке FAMP, будет сервер базы данных MySQL. Чтобы найти доступные версии и компоненты базы данных MariaDB, которые будут использоваться в этой настройке в пользу базы данных MySQL, введите в консоли машины одну из следующих команд.

ls -al / usr / ports / database / | grep mariadb поиск pkg -o mariadb

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

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

На следующем шаге обязательно включите демон MariaDB во FreeBSD и запустите службу базы данных, выполнив следующие команды.

sysrc mysql_enable = «ДА» запуск сервиса mysql-сервера

Затем начните защищать базу данных MaraDB, выполнив скрипт mysql_secure_installation . Используйте следующий пример установки для защиты базы данных MariaDB. Также убедитесь, что вы выбрали надежный пароль для пользователя root MySQL.

/ usr / local / bin / mysql_secure_installation ПРИМЕЧАНИЕ. ЗАПУСК ВСЕХ ЧАСТЕЙ ЭТОГО СКРИПТА РЕКОМЕНДУЕТСЯ ДЛЯ ВСЕХ СЕРВЕРОВ 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!

По умолчанию служба MariaDB настроена на привязку и прослушивание сетевых подключений на сетевом сокете 0.0.0.0:3306/TCP . Запустив команду sockstat с флагами -4 -6, вы заметите состояние сокета MariaDB, как показано на скриншоте ниже.

sockstat -4 -6

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

sysrc mysql_args = "- bind-address = 127.0.0.1". перезапуск службы mysql-сервера

Однако снова введите команду sockstat, чтобы определить новый статус сетевого сокета MariaDB. К настоящему времени MariaDB должна прослушивать соединения только через петлевой интерфейс, как показано на скриншоте ниже.

Sockstat -4

Sockstat -4

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

mysql –u root –p создать базу данных wordpress; предоставьте все права на wordpress. * для wpuser @ localhost, идентифицированного как wppassword; сбрасывать привилегии; выход

Шаг 2 - Установите веб-сервер Apache

Следующий сервис, который необходимо установить для завершения стека FAMP, - это сервер Apache HTTP. В репозитории FreeBSD PORTS входят две предварительно скомпилированные версии веб-сервера Apache. Чтобы получить список всех версий времени выполнения Apache, введите в терминале одну из следующих команд.

поиск pkg apache2 ls / usr / ports / www / | grep apache

поиск pkg apache2 ls / usr / ports / www / |  grep apache

Для этой пользовательской установки с Wordpress мы установим версию HTTP-сервера Apache 2.4, выполнив следующую команду.

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

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

sysrc apache24_enable = «да» служба apache24 запускается

Чтобы протестировать конфигурацию Apache, откройте браузер и перейдите на веб-страницу по умолчанию по протоколу HTTP, введя IP-адрес вашего сервера или системное полное доменное имя в поле URL, как показано на рисунке ниже. В вашем браузере должно появиться сообщение « Это работает! ».

http: // server_IP или_FQDN

http: // server_IP или_FQDN

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

rm /usr/local/www/apache24/data/index.html

Шаг 3 - Установите PHP

Подобно веб-серверу Apache, FreeBSD 11.x PORTS поставляется с несколькими предварительно скомпилированными бинарными версиями языка PHP: PHP 5.6, PHP 7.0 и выпуск PHP 7.1. Чтобы отобразить все версии PHP, введите одну из следующих команд.

ls / usr / ports / lang / | grep php pkg search –o php

ls / usr / ports / lang / |  grep php pkg search –o php

В этом пользовательском руководстве мы будем использовать версию PHP 7.1 для установки Wordpress. Введите команду ниже, чтобы установить PHP со всеми необходимыми модулями, чтобы Wordress работал правильно.

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

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

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-source
</ FilesMatch>
</ IfModule>

phps $>Приложение SetHandler / x-httpd-php-source</ FilesMatch></ IfModule>

После того, как вы закончите редактирование файла, убедитесь, что вы создали новый файл phpinfo.php в пути веб-корня Apache по умолчанию, выполнив приведенную ниже команду, чтобы проверить, работает ли PHP-шлюз Apache должным образом .

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

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

перезапуск службы apache24

Http: //server_IP-or-FQDN/phpinfo.php

php

Кроме того, вы можете создать файл конфигурации PHP ini для Apache и изменить оператор часового пояса, чтобы он отражал географическое положение вашего сервера. Список поддерживаемых часовых поясов PHP можно найти по следующей ссылке: http://php.net/manual/en/timezones.php

Скопируйте файл php.ini-production , чтобы создать установочный файл по умолчанию для PHP. Затем отредактируйте файл php.ini , чтобы изменить конфигурацию часового пояса PHP.

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

Фрагмент файла php.ini :

date.timezone = континент / город

timezone = континент / город

Чтобы применить новый параметр PHP, вам нужно перезапустить службу Apache. Затем снова посетите веб-страницу phpinfo.php и перейдите к настройке даты , чтобы увидеть, было ли изменение успешно применено, как показано на снимке экрана ниже.

перезапуск службы apache24

Шаг 4 - Установите WordPress

Чтобы установить Wordpress поверх FAMP во FreeBSD, сначала загрузите последнюю версию архива установки архива в вашу систему с помощью утилиты wget . Извлеките загруженный архив и скопируйте все установочные файлы Wordpress в путь веб-корня Apache, выполнив следующие команды.

wget https://wordpress.org/latest.tar.gz tar xfz latest.tar.gz cp –rf wordpress / * / usr / local / www / apache24 / data /

gz cp –rf wordpress / * / usr / local / www / apache24 / data /

Затем настройте правильные разрешения для пути к корневому каталогу сервера для учетной записи группы времени выполнения Apache, чтобы предоставить веб-серверу права на запись в установочный каталог Wordpress.

chown -R root: www / usr / local / www / apache24 / data / chmod -R 775 / usr / local / www / apache24 / data /

Теперь ваш веб-сервер подготовлен к процессу установки Wordpress. Откройте браузер и перейдите к IP-адресу вашего сервера или полному доменному имени, и должен появиться первый экран установки. Хит Пойдем! кнопка, чтобы начать установку.

кнопка, чтобы начать установку

На следующем экране введите имя базы данных MariaDB, имя пользователя и пароль базы данных Wordpress и хост базы данных. Поскольку MariaDB и веб-сервер Apache установлены на одном узле, используйте localhost для хоста базы данных. Оставьте значение префикса таблицы по умолчанию и нажмите кнопку « Отправить» , чтобы продолжить.

Оставьте значение префикса таблицы по умолчанию и нажмите кнопку « Отправить» , чтобы продолжить

После создания файла конфигурации базы данных нажмите кнопку « Запустить установку» и на следующем экране добавьте заголовок для вашего сайта, имя пользователя для администрирования сайта и адрес электронной почты. Убедитесь, что вы выбрали надежный пароль для имени пользователя. Кроме того, вы должны избегать использования простых имен пользователей как администратор, администратор, root и т. Д. Из-за последствий для безопасности. Когда вы закончите, нажмите кнопку Установить Wordpress , чтобы завершить установку.

Когда вы закончите, нажмите кнопку Установить Wordpress , чтобы завершить установку

После успешной установки Wordpress войдите в панель управления администратора с учетными данными, созданными на предыдущем шаге, и начните управлять своим сайтом.

Чтобы обновить или установить плагины или темы или загрузить изображения или изменить другие аспекты Wordpress, для которых требуется загрузка файлов из Интернета, добавьте следующую строку в файл Wordpress wp-config.php , введя следующую команду с привилегиями root.

echo "define ('FS_METHOD', 'direct');" | tee –a /usr/local/www/apache24/data/wp-config.php

Эта строка гарантирует, что Wordpress может загружать и устанавливать онлайн-файлы или обновления без запуска FTP-сервера на хосте. Тем не менее, этот метод может быть не лучшим выбором, если Wordpress установлен на плане общего хостинга. На приведенном ниже снимке экрана обновление для плагина было успешно применено с помощью FS_METHOD без запроса учетной записи ftp.

На приведенном ниже снимке экрана обновление для плагина было успешно применено с помощью FS_METHOD без запроса учетной записи ftp

Наконец, чтобы иметь возможность изменить структуру постоянных внутренних ссылок Wordpress, вам нужно включить перезапись для HTTP-сервера Apache . Чтобы включить модуль перезаписи, сначала откройте основной файл конфигурации Apache и добавьте следующий блок кода перед оператором <IfModule headers_module>, как показано на снимке экрана ниже.

nano /usr/local/etc/apache24/httpd.conf

выдержка из файла httpd.conf :

<Directory "/ usr / local / www / apache24 / data">
Требовать все предоставленные
AllowOverride All
</ Directory>

</ Directory>

Затем закройте файл и раскомментируйте строку LoadModule для перезаписи, выполнив приведенную ниже команду, которая удаляет предыдущий знак хэштега. Используйте grep filter для отображения строки перезаписи LoadModule . Наконец, проверьте файл конфигурации Apache на наличие возможных синтаксических ошибок и перезапустите службу, чтобы применить изменения.

grep rewrite /usr/local/etc/apache24/httpd.conf sed -i.bak '/ rewrite / s / ^ # // g' /usr/local/etc/apache24/httpd.conf grep rewrite / usr / local / etc / apache24 / httpd.conf apachectl -t служба apache24 перезапустить

Теперь вы можете изменить структуру постоянных ссылок Wordpress, перейдя в Dashboard -> Settings -> Permalinks . Выберите ваш любимый параметр постоянной ссылки для структуры URL из параметров экрана и нажмите кнопку Сохранить изменения , чтобы применить изменения. Отличным вариантом для SEO является постоянная ссылка на название поста .

Если опция постоянной ссылки не применяется, откройте и изучите содержимое файла .htaccess по пути к корню вашего сервера. Содержание ниже должно быть автоматически вставлено в этот файл. Если нет, обновите приведенный ниже контент вручную до файла .htaccess или проверьте права доступа к файлу. Учетная запись пользователя или группы времени выполнения Apache должна иметь права на запись в этот файл.

<IfModule mod_rewrite.c> RewriteEngine включен
RewriteBase /
RewriteRule ^ index \ .php $ - [L]
RewriteCond% {REQUEST_FILENAME}! -F
RewriteCond% {REQUEST_FILENAME}! -D
RewriteRule. /index.php [L]
</ IfModule>

php [L]   </ IfModule>

Это все! Вы успешно развернули веб-сайт Wordpress поверх веб-сервера Apache, базы данных MariaDB и языка программирования PHP во FreeBSD 11.

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

Новости

Карта