Apache. Установка и настройка.
Аренда сервера
VPS, VDS, Windows VPS - от $10
VPS
Для работы DSPAM WebUI, PostfixAdmin и web-интерфейса RoundCube нам потребуется web-сервер с поддержкой suexec и MySQL аутентификации (для DSPAM WebUI), и поддержкой PHP (для RoundCube и PostfixAdmin). В качестве web-сервера мы будем использовать apache 1.3, собранный с поддержкой suexec и модули к нему: mod_auth_mysql_another и mod_php. Использование apache версии 1.3 связано исключительно с личной привычкой, которая выработалась на основании рекомендаций человека имеющего опыт работы с высоко нагруженными системами. По большому счету в данной задаче без разницы какую версию использовать, при желании можно использовать и ветку 2.х, но просто так сложилось, что 1.3 мне ближе, о ней и пойдет речь.
Приступим к установке apache с поддержкой suexec. Включим поддержку suexec и ограничим ее деревом каталогов, где будут находится скрипты. Для этого добавим в /etc/make.conf:
APACHE_SUEXEC_DOCROOT=/home
Собираем порт:
# make install clean
Устанавливаем mod_auth_mysql_another:
# make install clean
Устанавливаем mod_php:
# make config
Отмечаем требуемые опции:
[X] CGI Build CGI version
[X] APACHE Build Apache module
[Х] SUHOSIN Enable Suhosin protection system (not for jails)
И собираем порт:
Теперь соберем некоторые расширения PHP, которые понадобятся нашим web-интерфейсам:
# make config
Отмечаем следующие опции:
[X] MBSTRING multibyte string support
[X] MYSQL MySQL database support
[X] SESSION session support
Собираем порт:
Разрешаем запуск apache, для этого добавляем в /etc/rc.conf:
Создадим директорию, где в последствии будем размещать конфигурационные файлы виртуалхостов:
Теперь можно заняться конфигурированием apache. Редактируем файл /usr/local/etc/apache/httpd.conf:
# Раздел 1: Общие настройки
#
ServerType standalone
ServerRoot "/usr/local"
PidFile /var/run/httpd.pid
ScoreBoardFile /var/run/httpd.scoreboard
Timeout 300
KeepAlive Off
MinSpareServers 5
MaxSpareServers 10
StartServers 5
MaxClients 150
MaxRequestsPerChild 100
# Модули. Лишние модули закоментированы.
# Если они Вам потребуются - можете раскоментировать.
LoadModule config_log_module libexec/apache/mod_log_config.so
LoadModule mime_module libexec/apache/mod_mime.so
LoadModule dir_module libexec/apache/mod_dir.so
LoadModule cgi_module libexec/apache/mod_cgi.so
LoadModule access_module libexec/apache/mod_access.so
LoadModule auth_module libexec/apache/mod_auth.so
LoadModule unique_id_module libexec/apache/mod_unique_id.so
LoadModule mysql_auth_module libexec/apache/mod_auth_mysql.so
LoadModule php5_module libexec/apache/libphp5.so
#LoadModule mmap_static_module libexec/apache/mod_mmap_static.so
#LoadModule vhost_alias_module libexec/apache/mod_vhost_alias.so
#LoadModule env_module libexec/apache/mod_env.so
#LoadModule mime_magic_module libexec/apache/mod_mime_magic.so
#LoadModule negotiation_module libexec/apache/mod_negotiation.so
#LoadModule status_module libexec/apache/mod_status.so
#LoadModule info_module libexec/apache/mod_info.so
#LoadModule includes_module libexec/apache/mod_include.so
#LoadModule autoindex_module libexec/apache/mod_autoindex.so
#LoadModule asis_module libexec/apache/mod_asis.so
#LoadModule imap_module libexec/apache/mod_imap.so
#LoadModule action_module libexec/apache/mod_actions.so
#LoadModule speling_module libexec/apache/mod_speling.so
#LoadModule userdir_module libexec/apache/mod_userdir.so
#LoadModule alias_module libexec/apache/mod_alias.so
#LoadModule rewrite_module libexec/apache/mod_rewrite.so
#LoadModule anon_auth_module libexec/apache/mod_auth_anon.so
#LoadModule db_auth_module libexec/apache/mod_auth_db.so
#LoadModule digest_module libexec/apache/mod_digest.so
#LoadModule proxy_module libexec/apache/libproxy.so
#LoadModule cern_meta_module libexec/apache/mod_cern_meta.so
#LoadModule expires_module libexec/apache/mod_expires.so
#LoadModule headers_module libexec/apache/mod_headers.so
#LoadModule usertrack_module libexec/apache/mod_usertrack.so
#LoadModule log_forensic_module libexec/apache/mod_log_forensic.so
#LoadModule setenvif_module libexec/apache/mod_setenvif.so
ClearModuleList
AddModule mod_log_config.c
AddModule mod_mime.c
AddModule mod_dir.c
AddModule mod_cgi.c
AddModule mod_access.c
AddModule mod_auth.c
AddModule mod_unique_id.c
AddModule mod_so.c
AddModule mod_auth_mysql.c
AddModule mod_php5.c
#AddModule mod_mmap_static.c
#AddModule mod_vhost_alias.c
#AddModule mod_env.c
#AddModule mod_mime_magic.c
#AddModule mod_negotiation.c
#AddModule mod_status.c
#AddModule mod_info.c
#AddModule mod_include.c
#AddModule mod_autoindex.c
#AddModule mod_asis.c
#AddModule mod_imap.c
#AddModule mod_actions.c
#AddModule mod_speling.c
#AddModule mod_userdir.c
#AddModule mod_alias.c
#AddModule mod_rewrite.c
#AddModule mod_auth_anon.c
#AddModule mod_auth_db.c
#AddModule mod_digest.c
#AddModule mod_proxy.c
#AddModule mod_cern_meta.c
#AddModule mod_expires.c
#AddModule mod_headers.c
#AddModule mod_usertrack.c
#AddModule mod_log_forensic.c
#AddModule mod_setenvif.c
#
# Раздел 2: Настройки по-умолчанию для главного хоста и вирт. хостов.
#
Port 80
User www
Group www
ServerAdmin [email protected]
DocumentRoot "/usr/local/www/data"
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
DirectoryIndex index.html index.php index.cgi
AccessFileName .htaccess
<Files ~ "^.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
UseCanonicalName On
TypesConfig /usr/local/etc/apache/mime.types
DefaultType text/plain
HostnameLookups Off
ServerSignature On
ErrorLog /var/log/httpd-error.log
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
AddType application/x-tar .tgz
AddEncoding x-compress .Z
AddEncoding x-gzip .gz .tgz
AddHandler cgi-script .cgi
LogLevel warn
LogFormat "%h %l %u %t "%r" %>;s %b "%{Referer}i" "%{User-Agent}i"" combined
LogFormat "%h %l %u %t "%r" %>;s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
CustomLog /var/log/httpd-access.log combined
#
# Раздел 3: Виртуальные хосты
#
NameVirtualHost *:80
Include /usr/local/etc/apache/vhosts/*.conf
Дополнительные записи:
1 комментарий
[...] установленные apache и MySQL. Как установить apache:http://wolandblog.com/387-apache-ustanovka-nastroyka/ Как установить MySQL: [...]