Установка LAMP - это комплексная инсталляция ПО: Apache, MySQL, PHP на ОС Linux, но в нашем случае это будет FreeBSD.
Начнём по порядку:
make install clean
rehash
В настройках компонентов не забываем помечать пункты с "MySQL".
Прописываем автозапуск веб сервера:
echo 'apache24_enable="YES"' >> /etc/rc.conf
И загрузку accf_http модуля для буферизации соединения HTTP:
echo 'accf_http_ready="YES"' >> /etc/rc.conf
Запускаем веб-сервер: "service apache24 start" и проверяем открытие стартовой страницы.
make install clean
cd /usr/ports/lang/php72-extensions
make install clean
cd /usr/ports/www/mod_php72
make install clean
rehash
При установке сопутствующих пакетов не забывайте указывать поддержку базы данных MySQL(MySQLi).
ee /usr/local/etc/apache24/httpd.conf
Настройте параметры: ServerName (DNS имя хостинга), ServerAdmin (e-mail администратора), DocumentRoot (расположение корневого каталога сайта).
Раскомментируйте "LoadModule rewrite_module libexec/apache24/mod_rewrite.so".
Приведите параметр "DirectoryIndex" к следующему виду:"DirectoryIndex index.php index.html index.htm default.htm default.html".
Найдите строки:
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
и добавьте после них:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
Сохраните и закройте "httpd.conf".
Далее скопируйте "php.ini" из шаблона:
cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
chmod 444 /usr/local/etc/php.ini
Перезапустите веб-сервер: "service apache24 restart".
make install clean
rehash
Внимание! Если система ругнётся, что уже установлена другая версия клиента MySQL, то необходимо его деинсталлировать, а затем продолжить установку последней версии сервера. Например:
cd /usr/ports/databases/mysql56-client
make deinstall clean
Прописываем автозапуск:"echo 'mysql_enable="YES"' >> /etc/rc.conf".
Запускаем сервер: "service mysql-server start".
Выполняем команду "mysqladmin -u root password 'my_password'" и устанавливаем пароль для пользователя "root" к базе данных. По умолчанию пароль пустой, поэтому его необходимо обязательно поменять. Далее проверяем подключение командой "mysql -u root -p". Если после ввода пароля вы попали в строку управления сервером MySQL, все работает корректно. Командой "quit" выйдите обратно в оболочку.
make install clean
rehash
cd /usr/local/www/phpMyAdmin
cp config.sample.inc.php config.inc.php
ee config.inc.php
Заполняем поле:
$cfg['blowfish_secret'] = 'YOUR_PASS'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Задайте секрет порядка 32 символов.
Сохраняем файл и переходим к настройке Apache: "ee /usr/local/etc/apache24/httpd.conf":
В секцию " <IfModule alias_module>" добавляем следующую строку:
Alias /phpmyadmin /usr/local/www/phpMyAdmin
2. После секции "Directory" добавляем свою:
<Directory "/usr/local/www/phpMyAdmin">
AllowOverride None
Options None
Require all granted
</Directory>
Перезапускаем веб-сервер: "service apache24 restart" и проверяем работу phpMyAdmin. Также можно добавить параметры для разрешения доступа с определённых подсетей или хостов. Например:
Order Allow,Deny
Allow from 192.168.1.0/24
mkdir /usr/local/www/vhosts
mkdir /usr/local/www/vhosts/site1.local
mkdir /usr/local/www/vhosts/site2.local
Далее раскомментируем строку в https.conf:
Include etc/apache24/extra/httpd-vhosts.conf
И добавим дерективу:
<Directory "/usr/local/www/vhosts">
AllowOverride None
Options None
Require all granted
</Directory>
Сохраняем изменения и открываем файл конфигурации виртуальных хостов:
ee /usr/local/etc/apache24/extra/httpd-vhosts.conf
Удаляем всё содержимое и вносим туда в качестве примера наши два хоста:
<VirtualHost *:80>
ServerAdmin admin@mail.com
DocumentRoot "/usr/local/www/vhosts/site1.local"
ServerName site1.local
ServerAlias www.site1.local
<Directory /usr/local/www/vhosts/site1.local>
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin admin@mail.com
DocumentRoot "/usr/local/www/vhosts/site2.local"
ServerName site2.local
ServerAlias www.site2.local
<Directory /usr/local/www/vhosts/site2.local>
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
Перезапускаем Apache. Теперь сайты будут разделены и доступны каждый по своему имени. Необходимые записи для разрешения имён нужно настроить в DNS.
Начнём по порядку:
Установка Apache:
cd /usr/ports/www/apache24make install clean
rehash
В настройках компонентов не забываем помечать пункты с "MySQL".
Прописываем автозапуск веб сервера:
echo 'apache24_enable="YES"' >> /etc/rc.conf
И загрузку accf_http модуля для буферизации соединения HTTP:
echo 'accf_http_ready="YES"' >> /etc/rc.conf
Запускаем веб-сервер: "service apache24 start" и проверяем открытие стартовой страницы.
Установка PHP:
cd /usr/ports/lang/php72make install clean
cd /usr/ports/lang/php72-extensions
make install clean
cd /usr/ports/www/mod_php72
make install clean
rehash
При установке сопутствующих пакетов не забывайте указывать поддержку базы данных MySQL(MySQLi).
Настройка Apache и PHP:
Конфигурируем httpd.conf:ee /usr/local/etc/apache24/httpd.conf
Настройте параметры: ServerName (DNS имя хостинга), ServerAdmin (e-mail администратора), DocumentRoot (расположение корневого каталога сайта).
Раскомментируйте "LoadModule rewrite_module libexec/apache24/mod_rewrite.so".
Приведите параметр "DirectoryIndex" к следующему виду:"DirectoryIndex index.php index.html index.htm default.htm default.html".
Найдите строки:
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
и добавьте после них:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
Сохраните и закройте "httpd.conf".
Далее скопируйте "php.ini" из шаблона:
cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
chmod 444 /usr/local/etc/php.ini
Перезапустите веб-сервер: "service apache24 restart".
Установка MySQL:
cd /usr/ports/databases/mysql80-servermake install clean
rehash
Внимание! Если система ругнётся, что уже установлена другая версия клиента MySQL, то необходимо его деинсталлировать, а затем продолжить установку последней версии сервера. Например:
cd /usr/ports/databases/mysql56-client
make deinstall clean
Прописываем автозапуск:"echo 'mysql_enable="YES"' >> /etc/rc.conf".
Настройка MySQL:
Правим конфигурационный файл при необходимости: "ee /usr/local/etc/mysql/my.cnf".Запускаем сервер: "service mysql-server start".
Выполняем команду "mysqladmin -u root password 'my_password'" и устанавливаем пароль для пользователя "root" к базе данных. По умолчанию пароль пустой, поэтому его необходимо обязательно поменять. Далее проверяем подключение командой "mysql -u root -p". Если после ввода пароля вы попали в строку управления сервером MySQL, все работает корректно. Командой "quit" выйдите обратно в оболочку.
Установка phpMyAdmin:
cd /usr/ports/databases/phpmyadminmake install clean
rehash
Настройка phpMyAdmin:
Настраиваем конфигурационный файл "config.inc.php":cd /usr/local/www/phpMyAdmin
cp config.sample.inc.php config.inc.php
ee config.inc.php
Заполняем поле:
$cfg['blowfish_secret'] = 'YOUR_PASS'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Задайте секрет порядка 32 символов.
Сохраняем файл и переходим к настройке Apache: "ee /usr/local/etc/apache24/httpd.conf":
В секцию "
Alias /phpmyadmin /usr/local/www/phpMyAdmin
2. После секции "Directory" добавляем свою:
<Directory "/usr/local/www/phpMyAdmin">
AllowOverride None
Options None
Require all granted
</Directory>
Перезапускаем веб-сервер: "service apache24 restart" и проверяем работу phpMyAdmin. Также можно добавить параметры для разрешения доступа с определённых подсетей или хостов. Например:
Order Allow,Deny
Allow from 192.168.1.0/24
Дополнительная настройка виртуальных хостов (при необходимости):
Создадим директорию для расположения виртуальных хостов и пару сайтов для примера:mkdir /usr/local/www/vhosts
mkdir /usr/local/www/vhosts/site1.local
mkdir /usr/local/www/vhosts/site2.local
Далее раскомментируем строку в https.conf:
Include etc/apache24/extra/httpd-vhosts.conf
И добавим дерективу:
<Directory "/usr/local/www/vhosts">
AllowOverride None
Options None
Require all granted
</Directory>
Сохраняем изменения и открываем файл конфигурации виртуальных хостов:
ee /usr/local/etc/apache24/extra/httpd-vhosts.conf
Удаляем всё содержимое и вносим туда в качестве примера наши два хоста:
<VirtualHost *:80>
ServerAdmin admin@mail.com
DocumentRoot "/usr/local/www/vhosts/site1.local"
ServerName site1.local
ServerAlias www.site1.local
<Directory /usr/local/www/vhosts/site1.local>
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin admin@mail.com
DocumentRoot "/usr/local/www/vhosts/site2.local"
ServerName site2.local
ServerAlias www.site2.local
<Directory /usr/local/www/vhosts/site2.local>
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
Перезапускаем Apache. Теперь сайты будут разделены и доступны каждый по своему имени. Необходимые записи для разрешения имён нужно настроить в DNS.
Комментариев нет:
Отправить комментарий