Огляд

В ході даної інструкції ми докладно розглянемо установку веб сервера 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».

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

З’являється віконце, де нам пропонують ознайомитися з ліцензією на використання цього продукту, вибираємо «I accept….» і тиснемо «Next».

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

Трохи історії, і знову «Next».

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

У віконце інформації про сервер вводимо дані, як показано вище на картинці:
Network Domain: localhost
Server name: localhost
Administrator’s Email Address: localhost»@localhost

Так само виберемо «For All Users, on port 80, as a Service — Recommended». І далі «Next»

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

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

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

Вибираємо все для повної установки, міняємо шлях інсталяції на C:ServerApache2

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

Знову тиснемо «Next».

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

Спостерігаємо хід встановлення.

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

Установка завершена. У правому нижньому куті з’явився заначок?

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

Якщо так то наш веб-сервер встановився. Клацаємо на значку лівою кнопкою миші відкриваємо панель управління:

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

Тут ми можемо стартувати, зупинити, або перезапустити наш сервер.

Тепер протестуємо наш сервер. Відкриваємо браузер і в рядку адреси, вводимо http://localhost. Якщо ви побачите наступній результат:

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

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

Встановлення 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 наступного змісту:

Зберігаємо. Відкриваємо в браузері http://localhost/phpinfo.php якщо все пройшло вдало повинні побачити наступні:
Установка і конфігурація веб сервера Apache з підтримкою PHP, JSP і MySQL на Windows XP

Встановлюємо підтримку JSP

Для цього нам необхідно встановити версії JDK 1.5, так як ми будемо встановлювати Tomcat 5, а він на версії не нижче 1.5 не працює.

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

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

Погоджуємося з ліцензійною угодою.

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

Залишаємо все як є

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

Хід встановлення.

Далі починається установка середовища виконання

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

Також залишаємо все як є.

Вискакує діалог вибору установки плагінів до наявних браузерам, як бачите у мене тільки один.

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

JDK встановлений!!!

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

Запускаємо jakarta-tomcat-5.5.4

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

Приймаємо вітання і ліцензійна угода

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

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

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

Встановлюємо все тугіше папочку «Server»

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

Конфігурацію залишаємо за замовчуванням.

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

Перевіряємо шлях до JRE.

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

Хід інсталяції

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

Ок. все готово. Але поки Tomcat працює сам по собі і не пов’язаний з Apache.

Перевіряємо працездатність Tomcat. Відкриваємо в браузері http://localhost:8080/, так як Tomcat за замовчуванням слухає порт 8080. При позитивному результаті ми повинні побачити наступне:

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

Тепер наша задача полягає в тому щоб прикрутити 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/. І якщо бачимо наступне, то все працює!

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

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

Тепер нам необхідно привести в порядок наш сервер, налаштуємо його під себе. Відкриваємо файл 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
# Якщо виводиться вміст папки, зчитуються файли опису:
ReadmeName README.html
HeaderName HEADER.html
# Файли для ігнорування, при виведенні лістингу директорії
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
AddEncoding x-Z compress
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

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

Привітання, тиснемо Next

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

Тут вибираємо Custom, так як нам необхідно встановити повністю всі компоненти і вказати шлях інсталяції.

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

Вибираємо всі компоненти для установки, і вказуємо шлях для інсталяції C:ServerMySQL Server 4.1. Йдемо далі.

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

Готові до початку процесу інсталяції? Тиснемо Install.

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

Спостерігаємо процес інсталяції.

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

Пропускаємо крок реєстрації на MySQL.com.

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

Ставимо галочку на опції «Конфігурувати MySQL сервер». І завершуємо процес установки приступаючи до конфігурації.

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

Знову привітання.

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

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

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

Зазначаємо, що MySQL сервер буде запускатися як служба Windows.

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

Вказуємо пароль для адміністратора, припустимо це буде «password».

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

Execute і все готово! Після чого ми спостерігаємо наступну картинку в нижньому правому куті:

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

Тепер тестуємо наш 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 і набираємо наступну команду як показано на малюнку:

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

Набираємо set password for тиснемо Enter

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

Тиснемо Enter. Набираємо q тиснемо Enter, віконце закривається.

Ну тепер має заробити, відкриваємо в браузері http://localhost/index.php і….

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

Працює!!!

Тепер нам необхідно прикрутити коннектор для підключення до 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.5 commonlib.
Ну тепер треба спробувати підключитися до MySQL сервера JSP. Давайте в папці C:ServerTomcat 5.5 webappsjsp-examples створимо файл test.jsp:

Доступні БД

Доступні БД

<%
//Завантажуємо драйвер
Class.forName(«com.mysql.jdbc.Driver»).newInstance();
//Підключаємося до бд
Connection conn =
DriverManager.getConnection(»
jdbc:mysql://localhost/test?user=root&password=password»);
Statement stmt = null;
ResultSet rs = null;
stmt = conn.createStatement();
//Запит на наявні БД
rs = stmt.executeQuery(«SHOW DATABASES»);
boolean more = rs.next ();
while (more)
{
// Отримує значення першої колонки
out.print(rs.getString(1));
out.print(«
«);
// Пересуваємося на наступний рядок набору даних
more = rs.next ();
}
%>

Відкриваємо браузер http://localhost/jsp-examples/test.jsp

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

Ок все працює!

Ну і заключний момент встановлення 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/

І спостерігаємо у випадку позитивного результату:

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