|
Устанавливаем Apache 2.2 # cd /usr/ports/www/apache22 # make install clean
Options for apache 2.2.9_5 [X] MYSQL Enable MySQL support for apr-dbd Правим конфигурационный файл: # ee /usr/local/etc/apache22/httpd.conf
Приводим к виду: Опционально: Listen 80 Опционально: User www — смените на пользователя от которого запускается apache Опционально: Group www — смените на группу от которого запускается apache ServerAdmin:
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
- Смените на ваш e-mail адрес Опционально: DocumentRoot "/usr/local/www/apache22/data" - Смените на ваш путь Опционально: Directory "/usr/local/www/apache22/data" - Смените на ваш путь Опционально: DirectoryIndex index.html index.html.var index.php Опционально: #CustomLog /var/log/httpd-access.log Опционально: ScriptAlias /cgi-bin/ "/usr/local/www/cgi-bin/" смените на ваш путь к cgi-bin Опционально: Directory "/usr/local/www/cgi-bin">
# echo 'accf_http_load="YES"' >> /boot/loader.conf # kldload accf_http Запуск: # apachectl start Пропишем запуск Apache при старте системы: # echo 'apache22_enable="YES"' >> /etc/rc.conf Настроим SSL: # mkdir /usr/local/etc/apache22/ssl.key # mkdir /usr/local/etc/apache22/ssl.crt # chmod 0700 /usr/local/etc/apache22/ssl.key # chmod 0700 /usr/local/etc/apache22/ssl.crt Создаем сертификат: # cd /root # openssl genrsa -des3 -out server.key 1024 # openssl req -new -key server.key -out server.csr # openssl x509 -req -days 3650 -in /root/server.csr -signkey /root/server.key -out /root/server.crt Сертификат будет действителен 3650 дней. Вполне достаточно, чтобы не вспоминать эту процедуру каждый год :-) Хотите знать больше о SSL Certs, вам сюда: http://httpd.apache.org/docs-2.0/ssl/ssl_faq.html#aboutcerts Копируем сертификаты:
# cp /root/server.key /usr/local/etc/apache22/ssl.key/ # cp /root/server.crt /usr/local/etc/apache22/ssl.crt/
Установим права: # chmod 0400 /usr/local/etc/apache22/ssl.key/server.key # chmod 0400 /usr/local/etc/apache22/ssl.crt/server.crt Правим конфигурационный файл: # cd /usr/local/etc/apache22/extra # ee httpd-ssl.conf Приводим к виду: DocumentRoot "/usr/local/www/apache22/data" — смените путь на ваш httpd.conf document root. ServerName www.example.com:443 - Смените www.example.com на ваше доменное имя (domain name). ServerAdmin :
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
- Смените на ваш e-mail адрес ErrorLog /var/log/httpd-error.log — Вы можете расскоментировать эту линию . TransferLog /var/log/httpd-access.log - Вы можете расскоментировать эту линию . SSLCertificateFile "/usr/local/etc/apache22/ssl.crt/server.crt" SSLCertificateKeyFile "/usr/local/etc/apache22/ssl.key/server.key" Удаляем pass-phrase (опционально): # cp /usr/local/etc/apache22/ssl.key/server.key /usr/local/etc/apache22/ssl.key/server.key.org # cd /usr/local/etc/apache22/ssl.key/ # openssl rsa -in server.key.org -out server.key Enter pass phrase for server.key.org: writing RSA key # chmod 400 server.key Разрешаем HTTPS: # ee /usr/local/etc/apache22/httpd.conf Include etc/apache22/extra/httpd-ssl.conf Перезапускаем APACHE: # apachectl stop # apachectl start Добавим поддержку PHP в APACHE: # cd /usr/ports/lang/php5 # make config В опциях включаем: [X] APACHE Build Apache module # make install clean # ee /usr/local/etc/apache22/httpd.conf Добавляем:
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps и
DirectoryIndex index.php index.html Перезапускаем APACHE:
# apachectl stop # apachectl start Для проверки можно создать следующее: # ee /usr/local/www/apache22/data/info.php Пропишем и сохраним:
<?php echo $_SERVER['REMOTE_ADDR']; // Show all information, defaults to INFO_ALL phpinfo(); // Show just the module information. // phpinfo(8) yields identical results. phpinfo(INFO_MODULES); ?>
Смотрим: http://yoursite.com/info.php
|