# mkdir /usr/local/src
# cd /usr/local/src
# fetch http://www.apache.org/dist/httpd/apache_1.3.28.tar.gz
# fetch ftp://ftp.lexa.ru/pub/apache-rus/patches_1.3.28rusPL30.18.ta...
Можно скачать сразу пропатчены apach - кому как нравится. Мы пойдем другим путем.
# fetch http://perl.apache.org/dist/mod_perl-1.28.tar.gz
# fetch http://www.modssl.org/source/mod_ssl-2.8.15-1.3.28.tar.gz
# fetch -o FreeBSD.layout http://matt.simerson.net/computing/www/apache.layout(если к моменту прочтения статьи вы захотите установить более свежий набор ищите ссылки по адресам
http://ftp.epix.net/apache/dist/httpd/apache_1.3.28.tar.gz
ftp://ftp.lexa.ru/pub/apache-rus/patches_1.3.28rusPL30.18.ta...
http://www.modssl.org/source/mod_ssl-2.8.12-1.3.27.tar.gz
http://www.openssl.org/source/openssl-0.9.6g.tar.gz
http://perl.apache.org/dist/mod_perl-1.0-current.tar.gz
http://se.php.net/distributions/php-4.2.3.tar.gz
)
Распаковываем:
# tar -xzf apache_1.3.28.tar.gz
# cp patches_1.3.28rusPL30.18.tar.gz apache_1.3.28/patches_1.3.28rusPL30.18.tar.gz
# cd apache_1.3.28
# tar -xzf patches_1.3.28rusPL30.18.tar.gz
# rm patches_1.3.28rusPL30.18.tar.gz
# cd ..
# tar -xzf mod_perl-1.28.tar.gz
# tar -xzf mod_ssl-2.8.15-1.3.28.tar.gz
# tar -jxf php-4.3.4.tar.bz2
# cd apache_1.3.28
# ./configure
# cd ../php-4.3.4
# ./configure --with-apache=../apache_1.3.28 --with-mysql --enable-force-cgi-redirect --enable-sockets --with-mod_charset
# make
# make install
# cd ../mod_perl-1.28
# /usr/bin/perl Makefile.PL APACHE_SRC=../apache_1.3.28 DO_HTTPD=1 USE_APACI=1 APACHE_PREFIX=/usr/apache_ssl EVERYTHING=1
# make
# make install
# cd ../mod_ssl-2.8.15-1.3.28
# ./configure --with-apache=../apache_1.3.28 --activate-module=src/modules/php4/libphp4.a
# cd ../apache_1.3.28
# ./configure --with-layout=../FreeBSD.layout:FreeBSD --with-perl=/usr/bin/perl --activate-module=src/modules/php4/libphp4.a --activate-module=src/modules/perl/libperl.a --enable-module=ssl --server-uid=www --server-gid=www
# make
# make certificate TYPE=custom
# make install
# ee /usr/local/etc/rc.d/startssl.pl
Записываем скрипт автоподстановки пароля при запуске
#!/usr/bin/perl
print "<пароль для сертификата>\n";
Выставляем права для скрипта
# chmod +x /usr/local/etc/rc.d/startssl.pl
# ee /usr/local/etc/apache/httpd.conf
Для автозаполнения пароля
Строчку вида
SSLPassPhraseDialog builtin
Меняем на
SSLPassPhraseDialog exec:/usr/local/etc/rc.d/startssl.pl
Находим блок из множества
AddLanguage и AddCharset
По окончанию блока пишем
AddDefaultCharset Windows-1251
Находим
AddType application/x-tar .tgz
После нее добавляем
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
Находим
#AddType text/html .shtml
#AddHandler server-parsed .shtml
Снимаем коментарии
AddType text/html .shtml
AddHandler server-parsed .shtml
Редактируем под себя :). (А надо то по минимуму всего поправить ServerAdmin, и ServerName)
# /usr/local/sbin/apachectl startssl
Проверяем наличие статических библиотек
# /usr/local/sbin/httpd -l
Compiled-in modules:
http_core.c
mod_env.c
mod_log_config.c
mod_mime.c
mod_negotiation.c
mod_status.c
mod_include.c
mod_autoindex.c
mod_dir.c
mod_cgi.c
mod_asis.c
mod_imap.c
mod_actions.c
mod_userdir.c
mod_alias.c
mod_access.c
mod_auth.c
mod_setenvif.c
mod_ssl.c
mod_php4.c
mod_perl.c
suexec: disabled; invalid wrapper /usr/local/sbin/suexec