Данный материал не претендует на уникальность, а представляет собой "сборную солянку" из информации, которую можно найти в сети. Она адаптирована для ОС FreeBSD 10 и выше.Также я предпочитаю не использовать стандартные пути хранения данных и стараюсь их изменять. По возможности, я выношу файлы БД и директории Web-сервера на отдельные диски, если нет возможности, на отдельные разделы.
1. Ставим Веб сервер
cd /usr/ports/www/apache24 && make install clean
Все запросы конфигурации оставляю по умолчанию, если что-то понадобится, буду собирать отдельно
2. Ставим базу данных
cd /usr/ports/databases/mysql57-server/ && make install clean
3. Ставим PHP, mod_php (Для работы Apache с PHP ) и PHP-Extension
cd /usr/ports/lang/php56 && make install clean
cd /usr/ports/www/mod_php56 && make install clean
cd /usr/ports/lang/php56-extensions/ && make install clean
В опциях нам предлагают выбрать, какие именно расширения устанавливать, я для себя обязательно кроме расширений по умолчанию устанавливаю
+[x] FTP FTP support - для работы с FTP
+[x] GD GD library support - работа с графикой
+[x] MYSQL MySQL database support - работа с БД MySQL
+[x] OPENSSL SSL/TLS support via OpenSSL
+[x] PGSQL PostgreSQL database support
+[x] SOCKETS sockets support
+[x] ZIP ZIP support
+[x] ZLIB ZLIB support
При необходимости, в дальнейшем можно установить каждый модуль расширения отдельно.
4. Настраиваем, запускаем и добавляем в автозагрузку MySQL
Добавляем в /etc/rc.conf
echo 'mysql_enable="YES"' >> /etc/rc.conf
Также у нас есть возможность изменить путь до конфигурации сервера, по умолчанию значение:
mysql_confdir="/usr/local/etc/mysql"
Для его изменения необходимо добавить соответствующую строку в /etc/rc.conf
Редактируем файл конфигурации
/usr/local/etc/mysql/my.cnf
Так, как я предпочитаю держать БД на отдельном диске или, по крайней мере, на отдельном разделе, меняю папку в которой будут лежать данные БД
datadir = /data/db/mysql
tmpdir = /data/db/mysql_tmpdir
slave-load-tmpdir = /data/db/mysql_tmpdir
secure-file-priv = /data/db/mysql_secure
innodb_data_home_dir = /data/db/mysql
innodb_log_group_home_dir = /data/db/mysql
По умолчанию все находится в /var/db/mysql
Не забываем изменить владельца директории
mkdir /data/db/mysql && mkdir /data/db/mysql_tmpdir && mkdir /data/db/mysql_secure
chown -R mysql:mysql /data/db/mysql
chown -R mysql:mysql /data/db/mysql_tmpdir
chown -R mysql:mysql /data/db/mysql_secure
И вносим соответствующую строку в /etc/rc.conf
mysql_dbdir="/data/db/mysql"
Пробуем запустить
/usr/local/etc/rc.d/mysql-server start
Создаем пароль, удаляем анонимного пользователя и тестовую базу
/usr/local/bin/mysql_secure_installation
Пробуем зайти в БД
mysql –p
Пароль вводим тот, который мы устанавливали в предыдущем шаге.
После входа для проверки можем выполнить команду
Show databases;
В ответ сервер должен выдать нам следующее
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
rows in set (0.00 sec)
5. Apache + PHP
Добавляем Apache в автозагрузку
echo 'apache24_enable="YES"' >> /etc/rc.conf
Редактируем конфигурационный файл Apache /usr/local/etc/apache24/httpd.conf
Добавляем
ServerName 127.0.0.1:80
Вместо 127.0.0.1 указываем наш ИП-адрес или доменное имя сервера. Если не указывать, будем получать предупреждение при запуске сервера
Проверяем, подгружается ли модуль PHP
Для этого в секции модулей должна присутствовать строка
LoadModule php5_module libexec/apache24/libphp5.so
Для того, чтобы наш сервер мог воспринимать файлы index.php, меняем
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
На
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
Для того, чтобы наш сервер мог обрабатывать (выполнять) php-файлы, а не предлагать нам их скачать, в секцию конфигурации <IfModule mime_module> добавляем
<IfModule php5_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>
Также вместо блока выше можно добавить
<FilesMatch ".php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch ".phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
Так, как меня не устраивает директория данных Apache по умолчанию (/usr/local/www/apache24), я ее переношу. Для этого
перемещаю существующие файлы
mv /usr/local/www/apache24 /data/www
И изменяю все пути в конфигурационном файле апача
C
/usr/local/www/apache24
на
/data/www
Пробуем запустить
/usr/local/etc/rc.d/apache24 start
Проверяем, запустился ли апач
/usr/local/etc/rc.d/apache24 status
apache24 is running as pid 79205.
Пробуем зайти на сервер через браузер по его ИЗ-адресу,если все нормально, получаем в ответ чистую страницу с одной единственной надписью «It works!»
Проверяем, работает ли наш веб сервер с php
Для этого создадим тестовую страницу в папке апача
echo '<?php phpinfo();?>' >> /data/www/data/index.php
И пробуем его открыть в веб браузере
http://ip-address/index.php
Должны увидеть страницу с информацией о нашем веб сервере и ПХП
Комментариев нет:
Отправить комментарий