Главная > Программирование > РНР: настольная книга программиста
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

3.2. Установка Apache

Итак, мы скачали нужный дистрибутив РНР, запаслись терпением и полностью готовы установить его на свой компьютер под управлением Windows 95/98.


ВНИМАНИЕ

Точно выполняйте все приведенные ниже шаги установки, не пропуская ни одного. Только в этом случае сервер заработает — это проверено. Вам нужно просто выполнять те или иные действия, иначе у вас есть шанс провести пару не самых приятных часов (дней) за изучением документации Apache.


Запустите мастер установки Apache. Первым вопросом будет предложение согласиться с условиями лицензии либо же отказаться от них. Нажмите «Yes», чтобы продолжить установку.

Далее нажимайте кнопку «Next» в появляющихся окнахдо тех пор, тока не увидите вопрос о выборе директории для установки Apache. Мы рекомендуем оставить директорию по умолчанию, впрочем, вы можете выбрать более удобный дня вас вариант. А путь, предлагаемый по умолчанию, может выглядеть примерно так:

C:\Program Files\Apache Group\Apache

В появившемся окне установите флажок Typical (стандартный — этот вариант установки подходит наибольшему числу пользователей) и нажмите кнопку «Next».

Далее Apache предложит вам создать папку в меню «Пуск» в папке «Программы». Если вы согласны, то нажмите кнопку «Next». Сразу после этого начнется копирование программного обеспечения.

После окончания копирования нажмите кнопку «Finish» и тем самым завершите установку сервера. Теперь приступим к его настройке.

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

Директорий, в которых будутхраниться ваши сайты, может быть несколько. Допустим, это будет C:\INTERNET. Нашадиректориябудетсодержатькорневойкаталог нового диска Z:.

В начале файла autoexec.bat (но после команды @echo off, если она у вас там есть) напишите такую строку:

subst Z: С:\INTERNET

Теперь все, что записано в директории С:\INTERNET, будет отображаться на диске как будто это обычный жесткий диск.


ВНИМАНИЕ

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

СОВЕТ

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


Создайте на диске Z: директорию home, а в ней — каталог localhost. В нем будет храниться содержимое главного хоста Apache — того, который доступен по адресу

http://localhost. Перейдите в каталог Localhost. Создайте в немдиректории cgi. В первой будут храниться CGI-скрипты, а во второй — ваши документы и программы на РНР. Подобную операцию вам нужно будет проделывать каждый раз при создании нового виртуального хоста (см. п. 3.3).

Откройте в «Блокноте» файл конфигурации httpd. conf, который расположен в поддиректории conf директории Apache (в нашем примере это С:\Program Files\Apache Group\Apache). Впрочем, вы можете и не искать этот файл вручную, а воспользоваться ярлыком Edit configuration в меню Пуск > Программы > Apache Web Server > Management (если в процессе установки вы разрешили программе инсталляции создать ярлыки в меню Пуск > Программы). Httpd.conf — единственный файл, который нужно подредактировать. Вам предстоит найти и изменить в нем некоторые строки. Чтобы избежать ошибок в настройках, не трогайте все остальное. Хотя нужно отметить, что в файле каждый параметр сопровождается несколькими строками комментариев и с первого раза разобраться в них тяжело.

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

Установите поле ServerName, как изображено на рис. 3.2.

Рис. 3.2. Установка поля ServerName


ВНИМАНИЕ

Не забудьте раскомментировать поле 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>. На комментарии не обращайте внимание. Этот блок нужно удалить, так как все настройки для директории со страницами должны наследоваться от настроек по умолчанию, которые мы только что установили.

Настройте так:

DirectorуIndex index.htm index.html

Это так называемые файлы индекса, которые автоматически выдаются сервером при обращении к какой-либо директории, если не указано имя HTML-документа. Можно добавить сюдаи другие имена, например index, php и т. д., однако дополнительные настройки все же лучше делать в файлах для каждого сайта в отдельности (рис. 3.3).

Найдите такой параметр:

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

Рис. 3.3, Редактирование файла .htaccess

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

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

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

Теперь следует найти блок параметров, начинающийся с <Directory "С: /Program Eiles/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 (рис. 3.4).

Рис. 3.4. Установкарасширений файлов

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

Вот вы и настроили свой домашний сервер Apache. Если вы соблюдали все пункты настройки и правильно выполняли все действия, то сервер должен быть работоспособен. Сейчас мы это проверим. Сначала нужно запустить сервер, для этого нажмите Пуск > Программы > Apache Web Sever > Management > Start Apache. Появится окно, похожее на «Сеанс MS-DOS», и ничего больше не произойдет. Не закрывайте это окно до конца работы с


ВНИМАНИЕ

Если окно открывается и тут же закрывается, это означает, что вы допустили какую-то ошибку в файле httpd.conf. В этом случае придется искать неточность. Проще всего это сделать следующим образом.

Запустите «Сеанс MS-DOS». Для этого нажмите Пуск > Выполнить. Наберите в появившемся диалоге command и нажмите «Enter». Появится подсказка командной строки. Если у вас нет возможности запустить «Сеанс MS-DOS», воспользуйтесь каким-нибудь другим средством. Например, запустите Far Manager и работайте через него. Просмотр результатов работы программы — Ctrl+O.

Наберите такие команды DOS:

с:

cd "\Program Files\Apache Group\Apache"

apache.exe

Если до этого Apache не запускался, то вы получите сообщение об ошибке и номер строки в httpd.conf, где она произошла. Исправьте httpd.conf и повторите описанный процесс сначала, до тех пор, пока в окне не отобразится что-то вроде Apache/1.3.14 (Win32) running...


Несколько слов о том, как можно упростить запуск и завершение работы сервера. В Windows можно назначить любому ярлыку функциональную комбинацию клавиш, нажав которые вы запустите этот ярлык. Щелкните правой кнопкой на панели задач, в контекстном меню выберите Свойства К Настройка меню > Дополнительно. В открывшемся «Проводнике» назначьте ярлыку Start Apache комбинацию Ctrl + Alt + А, а ярлыку Stop Apache — Ctrl + Alt + S. Теперь вы сможете запускать сервер нажатием Ctrl + Alt + А и останавливать его нажатием Ctrl + Alt + S.

Теперь проверим, правильно ли мы настроили директории для документов.

Проверка HTML

В директории z:/home/localhost/www с HTML-документами Apache создайте файл index.html с любым текстовым содержанием.

Теперь запустите браузер и наберите:

http://localhost/index.html

или просто

http://localhost/

После этого должен загрузиться ваш файл.

Проверка SSI

В директории z: /home/localhost/www с HTML-документами Apache создайте файл test.shtml с таким содержанием (внимательно следите за соблюдением пробелов в директиве include):

SSI Test!<hr>

<!-#include virtual="/index.html" ->

<hr>

Теперь наберите в браузере:

http://localhost/test.shtml

Должен загрузиться файл, состоящий из текста «SSI Test!», за которым следует содержимое файла index.html между двумя горизонтальными чертами. Если этого не произошло, значит, вы неправильно настроили работу SSI.

Проверка CGI

В директории z:/home/localhost/cgi для CGI-скриптов создайте файл test.bat с таким содержанием:

@echo off

echo Content-type: text/html

echo.

echo.

dir

Теперь в браузере наберите:

http://localhost/cgi/test.bat

В окне отобразится результат команды DOS dir.


ВНИМАНИЕ

Нужно отметить, что указанный тест работает не на всех версиях Windows: иногда, вместо того чтобы выполнить файл test.bat, Apache выводит в браузер его содержимое (а иногда Windows запускает этот файл в отдельном окне). С чем это связано — не совсем ясно, однако можно избавиться от указанной ошибки путем манипулирования с реестром Windows. Да и не стоит расстраиваться, если у вас не запускается test.bat: вряд ли вы когда-нибудь будете писать скрипты в виде bat-файлов, тем более, что этот способ несовместим с Unix.


Если что-то пошло не так либо окно Apache открывается и тут же закрывается, значит, где-то произошла ошибка — скорее всего, в httpd. conf. За детальным разъяснением ее причин можно обратиться клог-файлам, расположенным в директории С:\Program Files\Apache Group\Apache\logs.

<< Предыдущий параграф Следующий параграф >>
Оглавление