Зачем нужен домашний Web сервер?
Web сервер - программа, которая позволяет не подключаясь к сети, увидеть как будет выглядеть и работать ваша страничка в реальном интернете. Установив Web сервер, а к нему Perl, PHP3 и MySQL, вы получаете практически полный арсенал инструментов для профессиональной работы в Web.
Какой сервер выбрать?
Из всего многообразия серверов, я советую выбрать Apache. Во первых он бесплатный. Во вторых, Apache позволяет работать с технологиями PHP и CGI-скриптами. И в третьих правильно настроенный Apache даже в Windows работает как часы.
Где взять Apache?
Скачать Apache можно отсюда
Установка и настройка
Итак, дистрибутив скачан, можно приступить к настройке сервера.
Подготовка к установке
Для начала определим путь, куда будем установлен сервер. Советую максимально приблизится к структуре каталогов реального web сервера вашего провайдера. Предположим, вы выбрали диск D: (лучше физический а не виртуальный). Создайте на нем каталог: D:\usr\local\apache - здесь будет размещаться файлы нашего сервера.
Если вы выбрали другой диск, будьте внимательны заменяя пути на ваши собственные при редактировании файлов конфигурации.
Установка Apache
Запустите скачанный файл После лицензионного соглашения вам будет предложено выбрать папку для установки, где укажите путь к только что созданному каталогу: D:\usr\local\apache. Затем выберите метод установки Custom и исключите установку Web Server Source Code (если не собираетесь в них покопаться). Этим вы сэкономите около 10 Мб дискового пространства. Нажмите Next и через несколько секунд сервер будет установлен. Теперь осталось дело за малым - настроить его.
Настройка Apache
В папке: D:\usr\local\apache\conf находятся файлы конфигурации сервера. Нам для настройки нужны два из них: mime.types.conf и httpd.conf. Это обычные текстовые файлы и для их редактирования достаточно обычного блокнота Windows. Откроем сначала файл mime.types.conf и найдем в нем строку
text/html html htm
В ней указывается, какие расширения можно использовать для индексного файла вашей страницы. Изменим ее на
text/html html htm shtml shtm sht
Здесь все. Сохраним полученные изменения и откроем файл httpd.conf. Найдем строку
ServerAdmin ...
и укажем там EMail, который будет отображаться в сообщениях об ошибке.
ServerAdmin my_email@homenet.ru
В строке
ServerName ...
дадим имя серверу (убрав знак комментария перед строкой)
ServerName любое_имя_латинскими_буквами.
Затем создадим каталог: d:\www, в котором будут располагаться ваши html документы. и пропишем его в строке
DocumentRoot "d:/www"
Зададим установки всех папок по умолчанию. Это делается в блоке операторов, начинающемся строкой<Directory /> и заканчивающемся строкой </Directory>
<Directory /> Options Indexes Includes AllowOverride All </Directory>
Теперь зададим свойства папки, в которой будут хранится ваши html документы. Найдем строку
<Directory "d:/usr/local/apache/htdocs">
и изменим ее на
<Directory "d:/www">
После блока комментариев найдем и изменим строку
Options Indexes FollowSymLinks
на
Options Indexes Includes
Затем строку
AllowOverride None
на строку
AllowOverride All
Создадим каталог: d:\www где будут находится виртуальные серверы и пропишем его в конфигурации. Для этого найдем строку
UserDir "d:/usr/local/apache/users/"
и изменим ее на
UserDir "d:/home/"
Зададим расширения индексных файлов
DirectoryIndex index.html index.htm
Теперь создадим папку, в которой будут лежать CGI-скрипты, например d:\cgi-bin и пропишем ее в конфигурации
ScriptAlias /cgi-bin/ "d:/cgi-bin/"
Зададим для нее свойства
<Directory "d:/cgi-bin"> AllowOverride All Options ExecCGI </Directory>
Теперь укажем, файлы с каким расширением надо трактовать как CGI-скрипты
AddHandler cgi-script .cgi .bat .exe
Затем раскомментируем и изменим следующие строки
AddHandler server-parsed .shtml .shtm .sht .html .htm
Создание виртуальных серверов
Создадим теперь парочку виртуальных серверов. Это очень полезная штука, особенно если у вас несколько домашних страниц. Создадим для них следующую структуру папок
Для первого сервера: d:\home\you_page1\www-здесь будут лежать файлы сервера you_page1 d:\home\you_page1\cgi-здесь будут лежать скрипты сервера you_page1
Для второго сервера: d:\home\you_page2\www-здесь будут лежать файлы сервера you_page2 d:\home\you_page2\cgi-здесь будут лежать скрипты сервера you_page2 В Windows есть IP-адрес (127.0.0.1), которому разработчики установили соответствие с именем localhost. Нашим виртуальным серверам тоже понадобятся IP-адреса. Для этого зайдем в директорию, где находится ваша Windows и найдем там файл под именем hosts (без расширения). Если таковой отсутствует, создадим его. В нем пропишем две строки в которых зададим соответствие между IP-адресами и именами наших виртуальных серверов. 127.0.0.2 you_page1 127.0.0.3 you_page2 В конце второй строки нажмем <Enter> и сохраним все изменения. Теперь пропишем виртуальные сервера в конфигурации.
В конце файла httpd.conf есть блок настроек относящийся к виртуальным серверам. Он начинается строкой
#<VirtualHost ip.address.of.host.some_domain.com>
и заканчивается строкой
#</VirtualHost>
Раскомментируйте и измените этот блок на следующий:
Для первого виртуального сервера <VirtualHost 127.0.0.2> Адрес администратора этого сервера ServerAdmin email@you_page1.ru Имя сервера ServerName you_page1 Каталог, где находятся файлы для этого сервера DocumentRoot "f:/home/you_page1/www" Каталог, где находятся скрипты для этого сервера ScriptAlias /cgi/ "f:/home/you_page1/cgi/" Имя и путь для log файлов этого сервера ErrorLog f:/home/you_page1/error.log CustomLog f:/home/you_page1/access.log common </VirtualHost>
По аналогии для второго виртуального сервера. <VirtualHost 127.0.0.3> ServerAdmin email@you_page2.ru ServerName you_page2 DocumentRoot "f:/home/you_page2/www" ScriptAlias /cgi/ "f:/home/you_page2/cgi/" ErrorLog f:/home/you_page2/error.log CustomLog f:/home/you_page2/access.log common </VirtualHost>
Теперь сохраняем все изменения и запускаем Apache. Появится обычное окно MSDOS приложения, в котором будет сообщено что Apache запущен (Apache/x.x.x (Win32) running...). Если этого не произошло, и окно развернувшись сразу свернулось, значит вы где-то ошиблись на предыдущих шагах. Проверьте еще раз правильность конфигурации (может где-то слэш не поставили или путь не верный). Можно просмотреть log файлы ошибок, которые ведет сервер Apache. Они находятся в d:/usr/local/apache/logs.
Проверка работы Apache.
Проверка работы главной страницы
Скопируйте файл index.htm из папки d:/usr/local/apache/htdocs или создайте свой. Затем откройте браузер и введите http://localhost или просто localhost Страничка index.htm загрузится в браузер.
Проверка работы виртуальных серверов
Скопируйте файл index.htm в папки: d:/home/you_page1/www и d:/home/you_page2/www В окне браузера введите http://you_page1 Загрузится страничка первого виртуального сервера Затем http://you_page2 Загрузится страничка второго виртуального сервера
Проверка работы CGI
Скопируйте в папку d:/cgi-bin какой-нибудь исполняемый файл, например, калькулятор calc.exe из папки с Windows. Теперь в окне браузера введите http://localhost/cgi-bin/calc.exe Запустится калькулятор.
Проверка SSI
Добавьте в файл d:/www/index.htm следующую строку: <!--#exec cgi="/cgi-bin/calc.exe"--> Введите в окне браузера http://localhost Опять запустится калькулятор.
<Продолжение следует>
|