Форум о защите от: хакеров, взлом, раскрутка, хакер, вирусы, взлом программы, взлом паролей, взлом вконтакте, взлом icq, раскрутка сайта, взлом скачать, взлом почты, взлом ru, проги взлома, хакер, программа взлома, трояны, программирование
http://forum.ahack.ru/

Поднимаем свой Web-сервер под Windows
http://forum.ahack.ru/topic458.html
Страница 1 из 1

Автор:  BECHED [ 02-11, 15:01 ]
Заголовок сообщения:  Поднимаем свой Web-сервер под Windows

При написании данного руководства использовал следующее:
- Windows XP Pro - SP2
- Apache 2.0.55 for Win32
- Active Perl 5.8.7.815
- PHP 5.1.1
- MySQL 4.1.15
Все, что было установлено, ставилось на диск w:


I. Apache

1. Дистрибутив
Скачайте и установите Apache с http://httpd.apache.org/download.cgi.
Нужна версия "Win32 Binary (MSI Installer)". (Вы можете выбрать нужное вам зеркало для более быстрого скачивания)

Я использовал дистрибутив: apache_2.0.54-win32-x86-no_ssl.msi

2. Установка

Во время установки Apache, вам потребуется указать "Server Information." Я использовал следующее:

Network Domain: localhost
Server Name: localhost
Admin Email: (укажите ваш почтовый ящик)

Рекомендуется отметить: "for All Users, on Port 80, as a Service"

В этом месте, если вы используете Windows XP SP2 или в системе присутствует Firewall, вам потребуется разблокировать работу сервиса (система выдаст предупреждение).

Настройка пути:
В настройках установки (Setup Type) выберете стандартную установку (Typical), и укажите путь установки:
w:/usr/local/
с этим путем Apache будет установлен в:
w:/usr/local/apache2
В выборочной установке (Setup Type: Custom) вы также можете указать какие компоненты вы будете устанавливать.

3. Запуск/Останов Apache

После установки Apache2 стартует автоматически. В системном лотке появиться монитор сервиса Apache. При помощи него можно легко запускать и останавливать Apache. Так же имеется утилита для проверки правильности конфигурации Apache "Test configuration", она находиться в программной группе.

4. Проверка

Теперь нам нужно провести тест. Чтобы увидеть работу сервера откройте ваш браузер и перейдите на http://127.0.0.1/ или http://localhost/

Если вы увидите страницу документации Apache или что-то вроде "Test page for Apache Installation", то это означает, что сервис установлен и запущен.

5. Создание рабочих папок для Apache

Откройте w:usrlocalApache2confhttpd.conf любым текстовым редактором (или просто выберете в программной группе "Edit the Apache httpd.conf Configuration File").
Найдите там строку DocumentRoot. Замените ее на DocumentRoot "w:/www" или любой другой путь, где будут хранится ваши файлы.

ВНИМАНИЕ:
Не в коем случае не путайте ServerRoot и DocumentRoot. Перед заменой убедитесь в этом, DocumentRoot находиться где-то на 225-235 строке

Пролистайте вниз около страницы и замените путь блоке:
на свой, который вы указали выше.

Перезапустите Apache для принятия изменений.



II. Perl/CGI

1. Дистрибутив

Скачайте последнюю версию ActivePerl c
http://www.activestate.com/Products/Dow ... ActivePerl (если у вас попросят регистрации, то просто оставьте поля пустыми и нажмите "next").

Скачайте MSI версию для Windows.
Я использовал: ActivePerl-5.8.7.815-MSWin32-x86-211909.msi

2. Установка

При установке вам ничего менять не надо. Единственное что я сделал - это изменил путь установки на "w:usr" (Это потребуется для того, чтобы заголовок CGI приложений в Windows соответствовал Linux.
Последним шагом при настройке установки вам надо будет снять везде галочки, оставив только на:
- Add Perl to the PATH environment variable
- Create Perl file extension association

3. Включение CGI

Откройте w:usrlocalApache2confhttpd.conf любым текстовым редактором (или просто выберете в программной группе "Edit the Apache httpd.conf Configuration File").
Найдите там строку Options Indexes FollowSymLinks (в районе 267-й строки) и добавьте ExecCGI в конец. Это должно выглядеть теперь так:
Options Indexes FollowSymLinks ExecCGI

4. Разрешение CGI в любых папках (опционально)

Если вы хотите использовать CGI вне ScriptAliased директории (обычно это Apache2/cgi-bin/), вам нужно раскоментировать следующую строку:
#AddHandler cgi-script .cgi
и добавить в конец .pl, что будет, значит, что perl файлы будут выполняться как cgi скрипт.

Вы также можете закомментировать
ScriptAlias /cgi-bin/ "w:/usr/local/Apach2/cgi-bin/"

5. Определение пути к perl
Если вы устанавливали perl, следуя моим указаниям, то путь к интерпретатору, который вам нужно указывать в программах выглядит следующим образом:
w:/usr/bin/perl

Совет:

Для пути "w:/usr/bin/perl.exe, если он правильный будут соответствовать несколько вариантов написания:
#!w:/usr/bin/perl.exe
#!w:/usr/bin/perl
#!/usr/bin/perl.exe
#!/usr/bin/perl

В последних двух случаях подразумевается поиск на текущем диске.

6. Проверка

Если вы не отключили ScriptAlias /cgi-bin/, тогда создайте файл в w:/usr/local/Apach2/cgi-bin/test.cgi со следующим содержанием (если же вы отключили скрипталиасы, тогда разместите файл где-нибудь в w:www):

#!usr/bin/perl
print "Content-type:text/html ";
print "Test";

Перезапустите Apache и откройте в браузере http://127.0.0.1/cgi-bin/test.cgi или укажите друге место, если вы использовали вариант без ScriptAlias

Если в окне отображено "test", это означает, что CGI работает. Если вы получили сообщение об ошибке 500, тогда смотрите в w:/usr/local/Apache2/logs/error.log чтобы узнать, в чем проблема.


III. PHP

1. Дистрибутив
Скачайте последнюю версию c http://www.php.net/downloads.php

Я использовал php-5.1.1-Win32.zip

Распакуйте содержимое архива в w:php

2. Конфигурация PHP
Переименуйте w:phpphp.ini-dist в php.ini
Откройте его (php.ini) в текстовом редакторе и найдите doc_root (454-я строка), присвойте ему путь к вашему DocumentRoot от Apache (в нашем случае "w:www"), т.е.:
doc_root="w:www"

Пролистайте ниже и измените extension_dir="./", подставив путь к папке с модулями php после распаковки.
У меня это выглядит так:
extension_dir="w:phpext"

Еще можно поменять путь, где php будет хранить данные о сессиях, я указал путь к временной паке Windows, а можно под это дело отдельную папку w:varphps, т.е.:
session.save_path = "w:/var/phps"

Если вы собираетесь, продолжительное время тестировать программы и сервер, там нужно будет включить расширенный режим ведения логов (опционально), для этого найдите error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT
и замените его на error_reporting = E_ALL | E_NOTICE | E_STRICT

3. Конфигурация Apache
Откройте w:usrlocalApache2confhttpd.conf любым текстовым редактором (или просто выберете в программной группе "Edit the Apache httpd.conf Configuration File").
Туда вам нужно будет добавить несколько строк, где-нибудь после блоков LoadModule (перед этим убедитесь в наличии php5apache2.dll в папке, куда был установлен PHP, в нашем случае это w:/php/php5apache2.dll):
LoadModule php5_module "w:/php/php5apache2.dll"
AddType application/x-httpd-php .php
PHPIniDir "w:/php"

4. Проверка
Перезапустите Apache.
Создайте файл test.php следующего содержания:



теперь откройте его в браузере, вы должны увидеть то, что выведет функция phpinfo() а выведет она не мало.



IV. MySQL
1. Дистрибутив.
Зайдите на http://dev.mysql.com/downloads/mysql/4.1.html
пролистайте в самый низ, минуя все варианты, и скачайте версию "Windows Essential (x86)"

Я использовал mysql-essential-4.1.15-win32.msi

2. Установка
Запустите MSI-файл и проведите следующие установки:
- Typical Setup
- Skip Sign-Up
- убедитесь что стоит флаг на "Configure the MySQL Server now"
- "Detailed Configuration"
- "Developer Machine"
- "Multifunctional Database"
- "InnoDB Tablespace Settings" (оставьте без изменений)
- "Decision Support (DSS)/OLAP"
- убедитесь что отмечено "Enable TCP/IP Networking" и стоит стандартный порт 3306 (в этом месте вам опять потребуется настроить ваш Firewall, для доступа службы на localhost)
- "Standard Character Set" (в этом случае будет использоваться latin1 для записи в базу, но вы можете, изменит при желании на любую другую кодировку)
- Отметьте флагом "Install As Windows Service", снимите флаг с "Include Bin Directory in Windows PATH"
- Введите пароль для root
- Жмите "execute"

3. Настройка PHP для работы с MySQL
По умолчанию в PHP5 отключена поддержка MySQL, по этому включать ее мы будем руками. Скопируйте libmysql.dll (w:phplibmysql.dll) в вашу системную папку Windows (Обычно C:windowssystem32 или c:windowssystem)

Открываем php.ini и снимаем комментарий со следующей строки:
;extension=php_mysql.dll

Перезапустите Apache, если возникнут, какие либо ошибки, это означает что система скорее всего не может найти libmysql.dll и вам нужно проверить пути.

4. Проверка
Создайте следующий файл php-файл следующего содержания:

";
mysql_select_db("$dbName") or die("Не могу подключиться к базе");
print "Подключение к базе прошло успешно
";

// close connection
mysql_close($link);
?>

и запустите его



Общая настройка сервера завершена. Все компоненты настроены (более тонкую настройку придется проводить отдельно, и это выходит за рамки этой статьи) и готовы к работе.

Статья подготовлена с использованием материалов предоставленных разработчиками устанавливаемых компонентов.


SpxnezzaR

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/