Установка и конфигурация веб сервера Apache с поддержкой PHP, JSP и MySQL на Windows XP

Обзор

В ходе данной инструкции мы подробно рассмотрим установку веб сервера Apache, PHP, Tomcat (для поддержки JSP) и их привязку для совместной работы. Рассмотрим примерный файл конфигурации Apache. Затем мы произведем установку MySQL сервера и рассмотрим примеры доступа к нему из PHP и JSP. Установим PHPMyAdmin для работы с MySQL.

Необходимые компоненты

Мною были использованы следующие версии, по возможности самые последние.
Apache 2.0.52
PHP 4.3.9
Tomcat 5.5.4
mod_jk 1.2.6
J2SDK 1.5.0
MySQL 4.1.7
Connector/J 3.1.6
PHPMyAdmin 2.6.0
Где взять необходимые компоненты?
Apache Web Server
http://httpd.apache.org/
PHP
http://www.php.net/
JSP

* Tomcat
http://jakarta.apache.org
* mod_jk
http://www.javaportal.ru/downloads/downloads.html
* Java
http://java.sun.com/

MySQL

* MySQL Database
http://dev.mysql.com/downloads/
* Connector/J
http://dev.mysql.com/downloads/
* PHPMyAdmin
http://www.phpmyadmin.net/

Установка Apache

Для начала давайте создадим на диске С папку Server, куда мы будем устанавливать все нам необходимое. Предварительно закачаем все необходимое нам программное обеспечение, можно те же версии что использовал я, а можно и выше.

Запускаем apache_2.0.52-win32-x86-no_ssl и видим окно приветствия:

Жмем «Next».

Появляется окошко, где нам предлагают ознакомиться с лицензией на использование данного продукта, выбираем «I accept….» и жмем «Next».

Немного истории, и снова «Next».

В окошко информации о сервере вводим данные, как показано выше на картинке:
Network Domain: localhost
Server name: localhost
Administrator`s Email Address: localhost»@localhost

Так же выберем «For All Users, on 80 port, as a Service — Recommended». И далее «Next»

Выбираем Custom для выбора всех компонентов для установки.

Выбираем все для полной установки, меняем путь инсталляции на C:ServerApache2

Опять жмем «Next».

Наблюдаем ход установки.

Установка завершена. В правом нижнем углу появился заначек?

Если да то наш веб-сервер установился. Щелкаем на значке левой кнопкой мыши и открываем панель управления:

Здесь мы можем стартовать, остановить, или перезапустить наш сервер.

Теперь протестируем наш сервер. Открываем браузер и в строке адреса, вводим http://localhost. Если вы увидите следующей результат:

Значит сервер установлен удачно.

Установка PHP

Извлекаем содержимое php-4.3.9-Win32.zip в папочку C:Server и переименовываем получившеюся папку «php-4.3.9-Win32» в «php4».

Теперь нам надо дать понять серверу что у нас есть PHP интерпретатор.

Добавляем в конец конфигурационного файл нашего сервера C:ServerApache2confhttpd.conf следующею запись:

# Даём знать серверу что у нас есть PHP интерпретатор
ScriptAlias /php4/ «C:/Server/php4/»
Action application/x-httpd-php4 «/php4/php.exe»

# Устанавливаем расширения для PHP скриптов
AddType application/x-httpd-php4 .php .php3 .php4 .phtm .phtml

Сохраняем файл. Перезапускаем наш сервер (кнопочка restart в панели управления сервером), еще не забыли как?

Теперь нам надо проверить работает ли эта связка. В папочке C:ServerApache2htdocs (эта папка по умолчанию стои корневой, доступной с http://localhost) создаем файл phpinfo.php следующего содержания:

«?php

phpinfo();

Сохраняем. Открываем в браузере http://localhost/phpinfo.php, если все прошло удачно должны увидеть следующие:

Устанавливаем поддержку JSP

Для этого нам необходимо установить JDK версии 1.5, так как мы будем устанавливать Tomcat 5, а он на версии ниже 1.5 не работает.

Запускаем jdk-1_5_0-windows-i586.exe

Соглашаемся с лицензионным соглашением.

Оставляем все как есть

Ход установки.

Далее начинается установка среды выполнения

Также оставляем все как есть.

Выскакивает диалог выбора установки плагинов к имеющимся браузерам, как видите у меня только один.

JDK установлен!!!

Приступаем к установке Tomcat 5.

Запускаем jakarta-tomcat-5.5.4

Принимаем приветствие и лицензионное соглашение

Выбираем полную установку, помечая все компоненты галочками.

Устанавливаем все в туже папочку “Server”

Конфигурацию оставляем по умолчанию.

Проверяем путь до JRE.

Ход инсталляции

Ок. все готово. Но пока Tomcat работает сам по себе и не связан с Apache.

Проверяем работоспособность Tomcat. Открываем в браузере http://localhost:8080/, так как Tomcat по умолчанию слушает порт 8080. При положительном результате мы должны увидеть следующее:

Теперь наша задача состоит в том чтобы прикрутить Tomcat на localhost:

Для этого нам необходимо скопировать коннектор mod_jk.dll в папочку C:ServerApache2modules и в конфигурационном файле httpd.conf Apache2 добавить следующую запись:

###########################################################

## JSP Support

## Copied from Tomcat auto-configuration file

## + added JkMount /*.jsp ajp13

## + removed Virtual Host

IfModule !mod_jk.c>

LoadModule jk_module C:/Server/Apache2/modules/mod_jk.dll

JkWorkersFile «C:/Server/Tomcat 5.5/conf/workers.properties»

JkLogFile «C:/Server/Tomcat 5.5/logs/mod_jk.log»

JkLogLevel info

JkMount /manager ajp13

JkMount /manager/ * ajp13

JkMount /servlets-examples ajp13

JkMount /servlets-examples/ * ajp13

JkMount /jsp-examples ajp13

JkMount /jsp-examples/ * ajp13

JkMount /tomcat-docs ajp13

JkMount /tomcat-docs/ * ajp13

JkMount /webdav ajp13

JkMount /webdav/ * ajp13

JkMount / ajp13

JkMount / *. jsp ajp13

После чего необходимо перезагрузить сервер Apache2.

Давайте теперь проверим, работает ли? Открываем в браузере http://localhost/jsp-examples/. И если видим следующее, то все работает!

Конфигурация сервера

Теперь нам необходимо привести в порядок наш сервер, настроим его под себя. Открываем файл httpd.conf, все оттуда удаляем и вставляем туда текст:

# Папка куда установлен наш веб сервер

ServerRoot «C:/Server/Apache2»

# Порт, который слушает наш веб сервер

Listen 80

# Устанавливаем SSI, для файлов с расширением shtm, shtml html

AddType text/html .shtm .shtml .html

AddOutputFilter INCLUDES .shtm .shtml .html

# E-mail адрес админа веб сервера (поменяйте на свой)

ServerAdmin localhost@localhost

# Наш сервер:порт

ServerName localhost:80

UseCanonicalName Off

# Индексные файлы, через пробел

DirectoryIndex index.htm index.html index.shtm index.shtml
index.php index.php3 index.php4 index.jsp

# Имя встроенного конфигурационного файла

AccessFileName .htaccess

# Даём знать веб серверу, что у нас есть PHP интерпретатор

ScriptAlias /php4/ «C:/Server/php4/»

Action application/x-httpd-php4 «/php4/php.exe»

# Устанавливаем расширения для PHP скриптов

AddType application/x-httpd-php4 .php .php3 .php4 .phtm .phtml

# Папка куда будем складывать все наши html и прочие файлы.

DocumentRoot «C:/Server/www»

PidFile logs/httpd.pid

Timeout 300

KeepAlive On

MaxKeepAliveRequests 100

KeepAliveTimeout 15

HostnameLookups Off

# Модули

LoadModule access_module modules/mod_access.so

LoadModule actions_module modules/mod_actions.so

LoadModule alias_module modules/mod_alias.so

LoadModule asis_module modules/mod_asis.so

LoadModule auth_module modules/mod_auth.so

LoadModule autoindex_module modules/mod_autoindex.so

LoadModule cgi_module modules/mod_cgi.so

LoadModule dir_module modules/mod_dir.so

LoadModule env_module modules/mod_env.so

LoadModule imap_module modules/mod_imap.so

LoadModule include_module modules/mod_include.so

LoadModule isapi_module modules/mod_isapi.so

LoadModule log_config_module modules/mod_log_config.so

LoadModule mime_module modules/mod_mime.so

LoadModule negotiation_module modules/mod_negotiation.so

LoadModule setenvif_module modules/mod_setenvif.so

LoadModule userdir_module modules/mod_userdir.so

# Закрываем доступ к файлам конфигурации (.htaccess) и паролей (.htpasswd)

Order allow,deny

Deny from all

# База с типами файлов

TypesConfig conf/mime.types

# Тип всех документов — текстовый

DefaultType text/plain

MIMEMagicFile conf/magic

# Файл отчёта с ошибками

ErrorLog logs/error.log

# Что записывать в файл отчёта, может принимать следующие значения:

# debug, info, notice, warn, error, crit, alert, emerg.

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 logs/access.log common

ServerTokens Full

# Подпись веб сервера (On — включена, Off — отключена,
# EMail — показывать e-mail админа сервера)

ServerSignature On

# Виртуальные папки

# Например:

# Alias /icons/ «C:/Server/Apache2/icons/»

# Зайдя на http://localhost/icons/
# мы увидем содержимое папки C:/Server/Apache2/icons/

Alias /icons/ «C:/Server/Apache2/icons/»

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/ *

AddIconByType (IMG,/icons/image2.gif) image/ *

AddIconByType (SND,/icons/sound2.gif) audio/ *

AddIconByType (VID,/icons/movie.gif) video/ *

# Выбираем иконки для различных форматов

AddIcon /icons/binary.gif .bin .exe

AddIcon /icons/binhex.gif .hqx

AddIcon /icons/tar.gif .tar

AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv

AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip

AddIcon /icons/a.gif .ps .ai .eps

AddIcon /icons/layout.gif .html .shtml .htm .pdf

AddIcon /icons/text.gif .txt

AddIcon /icons/c.gif .c

AddIcon /icons/p.gif .pl .py

AddIcon /icons/f.gif .for

AddIcon /icons/dvi.gif .dvi

AddIcon /icons/uuencoded.gif .uu

AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl

AddIcon /icons/tex.gif .tex

AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..

AddIcon /icons/hand.right.gif README

AddIcon /icons/folder.gif ^^DIRECTORY^^

AddIcon /icons/blank.gif ^^BLANKICON^^

# Иконка для неизвестных форматов

DefaultIcon /icons/unknown.gif

# Если выводится содержимое какой-либо папки, cчитываются файлы описания:

ReadmeName README.html

HeaderName HEADER.html

# Файлы для игнорирования, при выводе листинга директории

IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t

AddEncoding x-compress Z

AddEncoding x-gzip gz tgz

# Наша кодировка

AddDefaultCharset WINDOWS-1251

# «C:/Server/Apache2/cgi-bin» директория CGI-скриптов

AllowOverride None

Options None

Order allow,deny

Allow from all

###########################################################

## JSP Support

## Copied from Tomcat auto-configuration file

## + added JkMount / *.jsp ajp13

## + removed Virtual Host

LoadModule jk_module C:/Server/Apache2/modules/mod_jk.dll

JkWorkersFile «C:/Server/Tomcat 5.5/conf/workers.properties»

JkLogFile «C:/Server/Tomcat 5.5/logs/mod_jk.log»

JkLogLevel info

JkMount /manager ajp13

JkMount /manager/ * ajp13

JkMount /servlets-examples ajp13

JkMount /servlets-examples/ * ajp13

JkMount /jsp-examples ajp13

JkMount /jsp-examples/ * ajp13

JkMount /tomcat-docs ajp13

JkMount /tomcat-docs/ * ajp13

JkMount /webdav ajp13

JkMount /webdav/ * ajp13

JkMount / ajp13

JkMount / *.jsp ajp13

Сохраняем. Перезагружаем сервер.

Устанавливаем MySQL сервер

Распаковываем файл mysql-4.1.7-win.zip и запускаем файл Setup.exe

Приветствие, жмем Next

Здесь выбираем Custom, так как нам необходимо установить полностью все компоненты и указать путь инсталляции.

Выбираем все компоненты для установки, и указываем путь для инсталляции C:ServerMySQL Server 4.1. Идем далее.

Готовы к началу процесса инсталляции? Жмем Install.

Наблюдаем процесс инсталляции.

Пропускаем шаг регистрации на MySQL.com.

Ставим галочку на опции «Конфигурировать MySQL сервер». И завершаем процесс установки приступая к конфигурации.

Опять приветствие.

Выбираем стандартную конфигурацию, что бы совсем не запудрить себе мозги, потом при желании можно попробовать полазить в настройках.

Указываем, что MySQL сервер будет запускаться как служба Windows.

Указываем пароль для администратора, допустим это будет «password».

Execute и все готово! После чего мы наблюдаем следующую картинку в нижнем правом углу:

Теперь тестируем наш MySQL сервер. Создадим в папке www файл index.php следующего содержания:

Сохраняем.

Открываем в браузере http://localhost/index.php и….

Не тут то было! Вылезет ошибка «Client does not support authentication protocol requested by server; consider upgrading MySQL client»

Ну что же это небольшая не совместимость. . . В MySQL 4.1 применяется новый способ хранения паролей и из-за этого вылезает несовместимость всех старых клиентов с MySQL. Что же делать?

Запускаем C:ServerMySQL Server 4.1binmysql.exe и набираем следующую команду как показано на рисунке:

Набираем set password for жмем Enter

Набираем root@localhost = old_password(‘password’)

Жмем Enter. Набираем q жмем Enter, окошко закрывается.

Ну теперь должно заработать, открываем в браузере http://localhost/index.php и….

Работает!!!

Теперь нам необходимо прикрутить коннектор для подключения к MySQL серверу из JSP.

Распаковываем mysql-connector-java-3.1.6.zip. Папочку mysql-connector-java-3.1.6. переименовываем в jconnector (C:Serverjconnector). Берем из этой папочки файл mysql-connector-java-3.1.6-bin.jar и копируем его в папку C:ServerTomcat 5.5commonlib.
Ну теперь надо попробовать подключиться к MySQL серверу из JSP. Давайте в папочке C:ServerTomcat 5.5webappsjsp-examples создадим файл test.jsp:

Доступные БД

Доступные БД

Открываем браузер http://localhost/jsp-examples/test.jsp

Ок все работает!

Ну и заключительный момент установка PHPMyAdmin

Для этого разархивируем phpMyAdmin-2.6.0-pl3.zip в папку C:Serverwww и переименуем в phpmyadmin.

Откроем файл config.inc.php

Заменим

$cfg[‘PmaAbsoluteUri’] = »;

на

$cfg[‘PmaAbsoluteUri’] = ‘http://localhost/phpmyadmin/’;

И аналогично поступаем со следующими строками файла:

$cfg[‘Servers’][$i][‘controluser’] = ‘ root ‘;

$cfg[‘Servers’][$i][‘controlpass’] = ‘password’;

$cfg[‘Servers’][$i][‘user’] = ‘root’;

$cfg[‘Servers’][$i][‘password’] = ‘password’;

Сохраняем. Открываем в браузере http://localhost/phpmyadmin/

И наблюдаем в случае положительного результата:

Источник: lred.ru

Оцените статью
новости для мужчин