Настройка файла конфигурации Apache

На этом этапе Вам нужно определиться с директорией, в которой будут храниться ваши сайты. По умолчанию Apache использует для этого C:\Program Files\Apache Group\Apache\htdocs, где сразу после установки можно найти документацию по серверу. Думаю, для серьезных целей она не очень подходит – слишком уж длинное имя, поэтому мы рекомендуем сделать для всех сайтов отдельный диск (например, с именем Z:) при помощи утилиты subst, входящей в Windows. Давайте остановимся на этом решении. Итак, проделайте следующее:

  • Выберите директорию, в которой будут храниться ваши сайты (их может быть несколько). Пусть, например, это будет C:\INTERNET. Наша директория будет содержать корневой каталог нового диска Z:.
  • В начале файла autoexec.bat (но после команды @echo off, если она у Вас там есть) напишите такую строку:
    subst Z: C:\INTERNET
  • Перезагрузите компьютер, чтобы новый диск создался. Теперь все, что записано в директории C:\INTERNET, будет отображаться на диске Z:, как будто это – обычный жесткий диск.

    Важно!
    Имеются сведения, что в Windows 95/98 есть ошибка. В результате нее при использовании subst пути иногда “сами по себе” преобразуются в абсолютные (то есть, например, в нашем случае Z: преобразуется в C:\INTERNET), причем в процессе работы какой-нибудь программы и совершенно неожиданно для нее. Однако, если Вы настроете все так, как описывается в этой статье, проблем возникнуть не должно.

    Вы можете также создать диск Z: с помощью какой-нибудь программы для виртуальных разделов (например, с помощью встроенной в Windows программы DriveSpace). Это решение, пожалуй, даже лучше, чем использование subst, как с точки зрения экономии памяти, и с точки зрения быстродействия. Ведь что такое Web-сайт, как не набор очень небольших файлов? А DriveSpace как раз и оптимизирует работу с такими файлами. За описанием того, как использовать DriveSpace, смотрите встроенную в Windows документацию.

  • Создайте на диске Z: директорию home, а в ней – каталог localhost. В нем будет храниться содержимое главного хоста Apache – того, который доступен по адресу http://localhost. Перейдите в последний созданный каталог. Создайте в нем директории cgi и www. В первой будут храниться CGI-скрипты, а во второй – ваши документы и программы на PHP. Замечу, что подобную операцию Вам нужно будет проделывать каждый раз при создании нового виртуального хоста (о них мы поговорим чуть позже).
  • Откройте в Блокноте файл конфигурации httpd.conf, который расположен в поддиректории conf директории Apache (в нашем примере это C:\Program Files\Apache Group\Apache). Впрочем, Вы можете и не искать этот файл вручную, а воспользоваться ярлыком Edit configuration в меню ПускПрограммыApache Web ServerManagement. Httpd.conf – единственный файл, который Вам нужно настроить. Вам предстоит найти и изменить в нем некоторые строки, а именно те, о которых упоминается далее. Во избежание недоразумений не трогайте все остальное. Следует заметить, что в файле каждый параметр сопровождается несколькими строками комментариев, разобраться в которых с первого раза довольно тяжело (впрочем, Вы можете обратиться к статье Русский перевод файла httpd.conf, в которой приведен полный перевод этих комментариев на русский язык). Поэтому не обращайте на них особого внимания.

 Для начала мы настроим параметры для главного хоста Apache – localhost, а также параметры по умолчанию, которые будут унаследованы всем остальными виртуальными хостами, если мы когда-либо захотим их создать.

  • Установите поле ServerName следующим образом:
    ServerName localhost

    Только не забудьте раскомментировать поле ServerName, то есть убрать символ “#” перед этим параметром (по умолчанию он закомментирован)! Вообще, все, что идет после этого символа и до конца строки, Apache игнорирует.

  • В поле DocumentRoot укажите ту директорию, в которой будут храниться ваши html-файлы. Мы ранее договорились, что это будет Z:\home\localhost\www):
    DocumentRoot "z:/home/localhost/www"
  • Найдите блок, начинающийся строкой <Directory /> и заканчивающийся </Directory> (вообще, такие блоки обозначают установки для заданной директории и всех ее поддиректорий). Этот блок может содержать множество комментариев – не обращайте на них внимания. Его нужно изменить на такой блок:
    
    
    <Directory z:/>   
      Options Indexes Includes   
      AllowOverride All   
      Allow from all   
    </Directory>

     Таким образом, в этом блоке будут храниться установки для всех директорий по умолчанию (т.к. это – корневая директория). А именно, для всех директорий по умолчанию устанавливается возможность автоматической генерации индекса – списка содержимого директории при просмотре ее в браузере, а также поддержка SSI и разрешение использовать файлы .htaccess для индивидуальных настроек каталогов.

  • Найдите аналогичный блок, начинающийся <Directory "C:/Program Files/Apache Group/Apache/htdocs"> и заканчивающийся </Directory>. Там будет много комментариев, не обращайте на них внимание. Этот блок Вам нужно удалить, так как все настройки для директории со страничками должны наследоваться от настроек по умолчанию, которые мы только что установили.
  • Установите DirectoryIndex так:
    DirectoryIndex index.htm index.html

    Однако дополнительные настройки все же лучше делать в файлах .htaccess для каждого сайта в отдельности.

  • Найдите и исправьте такой параметр:
    ScriptAlias /cgi-bin/ "z:/home/localhost/cgi/"

    Добавьте после него еще такую строчку:

    ScriptAlias /cgi/ "z:/home/localhost/cgi/"

    Да, именно так, с двумя слэшами. Это будет та директория, в которой должны храниться ваши CGI-скрипты. Подобный параметр говорит Apache о том, что, если будет указан путь вида http://localhost/cgi-bin, то на самом деле следует обратиться к директории z:/home/localhost/cgi. Мы используем два синонима для CGI-директории потому, что /cgi-bin/ будет доступна не только главному хосту localhost, но и всем остальным виртуальным хостам. В то же время, у каждого из них будет дополнительно своя CGI-директория /cgi/. Это – так называемые файлы индекса, которые автоматически выдаются сервером при обращении к какой-либо директории, если не указано имя html-документа. В принципе, можно добавить сюда и другие имена, например, index.phtml, если Вы будите работать с PHP и т.д.

  • Теперь следует найти блок параметров, начинающийся с <Directory "C:/Program Files/Apache Group/Apache/cgi-bin"> и заканчивающийся </Directory>. Это – установки для CGI-директории. Так как мы не собираемся указывать никаких дополнительных параметров взамен тех, которые уже установлены по умолчанию, этот блок нужно удалить.
  • Найдите и настройте (не забудьте раскомментировать!) следующий параметр:
    AddHandler cgi-script .bat .exe .cgi

    Это говорит Apache о том, что файлы с расширениями exe, bat и cgi нужно рассматривать как CGI-скрипты.

  • И последнее – установите следующие параметры:
    AddType text/html .shtml   
    AddHandler server-parsed .shtml .html .htm

     Этим Вы заставляете Apache обрабатывать файлы с указанными расширениями процессором SSI.

  • Теперь не забудьте сохранить изменения и закройте блокнот.

Добавить комментарий

Вам надо войти, чтобы написать комментарий.