|
Ключевые слова: apache, install, mod_php, mod_perl, ssl, (найти похожие документы)
From: Сергей Кузнецов (SergeyKa) <mailksa@mail.ru> Newsgroups: email Date: Mon, 11 Nov 2003 14:31:37 +0000 (UTC) Subject: Установка связки Apache + php + perl + ssl Оригинал статьи находится по адресу http://www.sergeyka.h10.ru Немного информации для ознакомления. При написании статьи я пользовался несколькими методами описанными в http://www.opennet.dev/base/dev/apache_php_mysql.txt.html http://www.opennet.dev/docs/HOWTO-RU/mini/Apache-mods.html http://www.opennet.dev/base/dev/apache2_php.txt.html http://matt.simerson.net/computing/www/apache.shtml но ни один из описанных методов не давал нужного результата. Пришлось анализировать и микшировать разные способы. Во первых я привык к стандартному расположению библиотек, настроечных файлов, бинарных модулей, во вторых, исходя из соображения наиболее задействованных модулей, хотелось собрать apache с не выгружаемым модулем PHP, так как это наиболее популярный язык для написания скриптов, и выгружаемым модулем perl, исходя из обратных соображений :). Была замечена грабля - apache не хочет собиратся с PHP и PERL статическими библиотеками. Решения данной проблемы я не нашел :( Вообщем смотрим что получилось. Установка производилась на FreeBSD 5.1. Собираем Apache с потдержкой perl+php+ssl. Качаем во временный каталог исходники: # 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.tar.gz Можно скачать сразу пропатчены 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.tar.gz 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 # cd .. # tar -xzf mod_perl-1.28.tar.gz # tar -xzf mod_ssl-2.8.15-1.3.28.tar.gz Конфигурим # cd mod_ssl-2.8.15-1.3.28 # ./configure --with-apache=../apache_1.3.28 --with-ssl=/usr --enable-shared=ssl \ --with-mm=/usr/local # cd ../mod_perl-1.28 # perl Makefile.PL DO_HTTPD=1 USE_APACI=1 APACHE_PREFIX=/usr/local EVERYTHING=1 \ APACI_ARGS='--server-uid=www, --server-gid=www, --enable-module=so \ --enable-module=most, --enable-shared=max --disable-shared=perl, \ --enable-module=perl, --with-layout=../FreeBSD.layout:FreeBSD, \ --without-confadjust' # make test # cd ../apache_1.3.28 # make certificate TYPE=custom (Прошу!!! Не задавайте вопросов по поводу того как заполнять данные сертификата. Проявите сообразительность!) # rm /usr/local/etc/apache/httpd.conf (Если сервер ранее не настраивался) Если этого не сделать прийдется ручками править настройку SSL # cd ../mod_perl-1.28 # make install # cvsup -g /etc/cvsup-ports (учитываем, что свежие порты подразумевают использование свежего apache и соответствующих ему модулей) # cd /usr/ports/www/mod_php4 # make (В диалоге добавляем те функции работу которых будут использовать скрипты php) # 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 Редактируем под себя :) (Минимум - поставить Имя сервера, чтобы не ругалось при запуске) # /usr/local/sbin/apachectl startssl В логах ищем "Apache/1.3.28 (Unix) mod_perl/1.28 PHP/4.3.3RC4 mod_ssl/2.8.15 OpenSSL/0.9.7a" проверяем работу mod_perl # chown www:www /usr/local/www/cgi-bin/test-cgi # chmod 500 /usr/local/www/cgi-bin/test-cgi В браузере набираем http://www.myd.ru/cgi-bin/test-cgi Будем считать, что настройка завершена :)
|
Обсуждение | [ RSS ] |
|
Добавить комментарий |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |