В этой статье описаны основные шаги, которые необходимо выполнить, чтобы настроить веб-сервер на FreeBSD.
Данная статья предполагает, что все комманды выполняются в консоли FreeBSD, которая имеет доступ в интернет.
Все комманды запускаются от пользователя root
.
------------------ I. Настройка FreeBSD ----------------- Текущая система zg# uname -ri 7.2-RELEASE GENERIC Синхронизируем время zg# ntpdate ntp.ru Обновляем порты zg# csup -h cvsup6.ru.freebsd.org /usr/share/examples/cvsup/ports-supfile ------------------ II. Установка MySQL ----------------- Ставим MySQL из пакета zg# pkg_add -r mysql51-server Обновляем системные пути zg# rehash Устанавливаем начальные базы данных, необходимые для работы MySQL zg# mysql_install_db --user=mysql Устанавливаем конфиг zg# cp /usr/local/share/mysql/my-medium.cnf /usr/local/etc/my.cnf Включаем демона MySQL zg# echo 'mysql_enable="YES"' >> /etc/rc.conf Стартуем MySQL zg# /usr/local/etc/rc.d/mysql-server start ------------------ III. Установка Apache ----------------- Переходим в порт апача zg# cd /usr/ports/www/apache22 Ставим порт в "тихом" режиме zg# make BATCH=yes install clean Включаем демон, но пока не стартуем! Прежде надо собрать пхп. zg# echo 'apache22_enable="YES"' >> /etc/rc.conf ------------------ IV. Установка PHP ----------------- Переходим в порт пхп zg# cd /usr/ports/lang/php5/ Устанавливаем порт с запросом опций, чтобы отметить в списке Apache (см. скриншот) zg# make config install clean Переходим в порт пхп-модулей zg# cd /usr/ports/lang/php5-extensions/ Запускаем выбор опций zg# make config Для нормальной работы веб-сервера, я бы порекомендовал следующие модули: GD GD library support DOM DOM support ICONV iconv support MBSTRING multibyte string support MYSQL MySQL database support PCRE Perl Compatible Regular Expression support SIMPLEXML simplexml support SESSION session support XML XML support Также желательно отключить модуль dba, поскольку он часто мешает нормальной сборке. Устанавливаем порт в "тихом" режиме zg# make BATCH=yes install clean Устанавливаем конфиг пхп zg# cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini ------------------ IV. Настройка Apache ----------------- Создаём виртуальный хост zg# ee /usr/local/etc/apache22/Includes/0-virtualhost.conf <VirtualHost *:80> <IfModule mod_php5.c> AddType application/x-httpd-php .php DirectoryIndex index.php index.html index.htm </IfModule> ServerAdmin some@admin DocumentRoot "/usr/local/www/default/docs" <Directory "/usr/local/www/default/docs"> AllowOverride All Order Deny,Allow Allow from all </Directory> ServerName localhost </VirtualHost> Создаём папку, в которой будет находится хост zg# mkdir -p /usr/local/www/default/docs Создаём индексный файл zg# echo '<?php phpinfo()?>' > /usr/local/www/default/docs/index.php Меняем владельца для папки хоста zg# chown -R www:www /usr/local/www/default/docs Обновляем системные пути zg# rehash Проверяем конфиг апача zg# apachectl configtest Syntax OK Запускаем апач! Если всё сделано правильно, то сервер должен заработать. zg# /usr/local/etc/rc.d/apache22 start
Дата публикации: 6 сентября 2009 года.