Главная » Статьи » Веб » Администратирование |
Copyright© 2004. Oleg Kazban (mailto:cyberix@ukr.net) Веб-сервер в домашних условиях? Реально! Руководство по установке Apache2 + Perl + PHP + MySQL для Windows Работоспособность сервера тестировалась на моем компьютере, так что все описанное здесь опробовалось на "собственной шкуре". Для того чтобы избежать возможных проблем, я прошу Вас соблюдать все в точности, как описано. В случае, если возникнут какие-либо вопросы по установке и администрированию сервера, пишите мне на cyberix@ukr.net Дистрибутивы, использовавшиеся в тестированииБродя по бескрайним просторам Интернета, Вы наверняка сталкивались с такими сервисами, как гостевая книга, чат, форум, доска объявлений, короче говоря с сервисом, который работает не со статически созданными страницами, а с динамической информацией - предоставляет пользователю ту часть информации, которая соответствует некоторому сценарию. И наверняка Вы захотели устроить себе такой же сервис на своем сайте. Проблема заключается в следующих моментах - во-первых, Вам необходимо знать язык сценариев типа Perl или PHP, во-вторых никто не сможет написать с нуля работоспособный скрипт без ошибок и неточностей, а просиживать все это время в Интернете обойдется очень дорого, ток что нужна домашняя платформа, и в-третьих, если уж у Вас готов скрипт, то существует проблема размещения сайта на хостинге, поддерживающем технологии Perl или PHP, так как платить деньги за ту де домашнюю страничку мало кто захочет, а бесплатный хоснтиг не предоставляет услуги Perl или PHP технологий. Но вернемся к первым двум проблемам, а точнее, ко второй - необходимости завести себе локальную платформу, которая обеспечит написание и отладку скриптов для динамического вывода информации. Для этого потребуется - веб-сервер Apache2 (как самая популярная и устойчивая версия веб-сервера), PHP, Perl, MySQL - кроме веб-сервера вам потребуется только то, с чем Вы будете работать. Если Вы не собираетесь использовать базы данных, то MySQL Вам ни к чему. Итак, приступим. 2. Начнем!Технологии типа Perl, PHP, MySQL, SSI, CGI требуют для своего работоспособного существования наличия веб-сервера. В наше время распространено достаточно много различных серверов, но именно Apache является наиболее популярным, надежным сервером среди множества других. Apache разработан командой программистов-любителей и является программным обеспечением с открытым программным кодом. Точно так же все популярные платформы - PHP, Perl, MySQL - являются программным обеспечением с открытым программным кодом, и за их использование Вам не придется платить ни копейки. Огромным плюсом является то, что Apache - это кросс-платформенная система. Работает как под управлением Unix, так и под Windows, причем под любой версией (но все-таки желательно, чтобы это была NT система) на любой машине, даже на старенькой 486. Далее, я буду описывать действия для локального компьютера под управлением достаточно популярной Windows XP, но для всех Windows систем действия аналогичны, так что если у вас стоит другая версия, не расстраивайтесь, и следуйте дальнейшим инструкциям. Первым делом Вам нужно получить дистрибутив сервера. Получить его Вы можете непосредственно с сайта разработчиков: www.apache.org. Закачать его можно или в виде бинарного дистрибутива, или в виде архива с исходным кодом (предпочтительнее качать все-таки бинарный, но только не в том случае, если Вы хотите разобраться с "внутренностями"). Первое, с чем Вы должны будете определиться, это куда Вы будете устанавливать сервер. Можно же конечно, установить его туда, куда Вы обычно ставите другое программное обеспечение, сервер в этом случае будет функционировать, но заниматься администрированием (что само по себе увлекательно) Вам будет достаточно затруднительно. Итак, для лучше всего Вам выделить под платформу целый диск. Тип файловой системы роли не играет - но все-таки NTFS значительно стабильнее FAT32, так что если Вы не хотите в один прекрасный день потерять все свои наработки, выделите диск размером порядка 1 Гб (больше Вам вряд ли понадобится, а меньше... уж все-таки лучше больше) с файловой системой NTFS. Обзовите этот том как Server - на самом деле название роли не играет, это всего лишь для удобства. Пусть установка происходит на логический диск E, имеющий метку Server. 3. Установка Apache 3.1 Установка сервера
Сама установка сервера занимает порядка нескольких минут максимум. Теперь остается самое увлекательное (а для кого нудное и непонятное) - отконфигурировать сервер. 3.2 Конфигурирование сервераТеперь нужно вручную отредактировать файлы конфигурации. 3.2.1 Настройка файла mime.types
В этом файле находятся грубо говоря ассоциативные связи с типами файлов. Т.е. здесь Вы указываете, какой тип файлов каким обработчиком будет обрабатываться.
AddType text/html html htm shtml shtm sht
Вот по идее и все! Теперь нужно перезапустить сервер, для чего один раз кликнуть на значке в системном трее левой кнопкой, появится меню: Start, Stop, Restart. Кликаете на Restart, после чего если не было нигде допущено ошибок, сервер будет перезапущен. В противном случае, будет выдано сообщение об ошибке и или прийдется ее искать, или повторить все с начала. 3.2.3 Проверка работоспособности сервера.
При активной работе может случиться так, что пользоваться одним хостом неудобно. Неудобство будет заключаться в том, что при установке сервера существует только одна директория e:/www для хранения html-документов и только одна директория для cgi-скриптов - e:/cgi-bin. Данную проблему можно решить при помощи виртуального хостинга. Скажем, можно с помощью сервера сделать один с именем serv1 и адресом 127.0.0.2, а другой - с именем serv2 и адресом 127.0.0.3. (вместо "serv1" и "serv2" Вам нужно будет указать действительные имена Ваших виртуальных хостов. Назовите их так же, как и на Вашем настоящем Web-сервере - это может многое упростить при программировании скриптов.) в случае хостинга, основанного на ip-адресах, или с одним и тем же ip-адресом (127.0.0.1), но разными именами ("serv1" и "serv2"), в случае хостинга, основанного на именах. Я рассмотрю оба случая. 4.1 Виртуальный хостинг, основанный на ip-адресахКак это принято в Unix, каждый сервер будет представлен своим каталогом в директории e:/home с именем, совпадающим с именем сервера. Например, сервер serv1 будет храниться в директории e:/home/serv1. В этой директории будут находиться:
Директории www и cgi Вам необходимо создать прямо сейчас. Далее, для установки виртуального нужно будет настроить главный сервер:
Если Вам необходимо создать 2, 3 , 4 и т.д. хоста, то просто копируете данный блок, только изменяете имена серверов и адреса и месторасположение документов и скриптов. Адреса лучше всего раздавать по порядку, а то можно запутаться и возможна некорректная работа сервера Основной хост по-прежнему доступен по адресу http://127.0.0.1 или http://localhost. 4.2 Виртуальный хостинг, основанный на именахПринцип построения тот же самый, Вам необходимо выделить под каждый хост отдельную папку, имя которой совпадает с именем хоста, в которой, есть две вложенные папки www и cgi - для документов и скриптов. Разница лишь в настройках основного сервера. Для виртуального хостинга, основанного на именах, Вам нужно настроить основной сервер следующим образом:
Установка PHP не займет много веремени. Нужно всего лишь достать бинарный дистрибутив, и запустить setup-программу, а также необходимо настроить сервер. 5.1 Установка PHP
О том, работает PHP или нет, Вам поможет узнать простенький скрипт:
Данный скрипт нужно сохранить в ту же папку что и html-документы - e:/www/test.php. Теперь в адресной строке браузера наберите: http://localhost/test.php В результате Вам будет выдана полная информация по установленной у Вас PHP платформе. Кстати, данную страницу очень удобно использовать для тонкой настройки PHP - при сохранении изменений в конфигурационном файле вся информация будет отображена вновь. 6. Установка PerlРабота с Perl начинается с выбора директории. Так как Perl требует, чтобы в каждом скрипте первой строкой стоял путь к Perl-интерпретатору; например, эта строка может выглядеть так: #!/usr/local/bin/perlЭту же строку можно было бы написать и так: #!/usr/local/bin/perl.exeили даже так: #!e:usrlocalbinperl.exeЭто заставляет искать Perl-интерпретатор в директории e:/usr/local/bin/ (если диск e: не указан, это означает, что он совпадает с диском, на котором расположен Apache). Ясно, что если Вы установите Perl не в такую же директорию, как на настоящем Web-сервере, Вам придется каждый раз менять эту самую первую строку во всех скриптах при закачке их на сервер. Таким образом, следует разместить интерпретатор в той же директории, что и на настоящем сервере:: e:/usr/local/bin ВНИМАНИЕ: очень распространенной ошибкой является установка Perl не в ту директорию или не на тот диск. Если Вы все же по какой-то необъяснимой причине не придерживаетесь этого совета, то проверьте первую строку в Вашем скрипте. Она должна указывать не на директорию с Perl, а на исполнимый файл perl.exe. Напоминаю, что6.1 Установка Perl#!/usr/local/bin/perlзаставляет искать Perl-интерпретатор perl.exe в директории e:/usr/local/bin/, а не e:/usr/local/bin/perl
Для запуска интерпретатора нужно дать серверу знать, как обрабатывать файлы с расширением .pl и .cgi:
Вот и все! Можете пользоваться Perl-интерпретатором! 6.3 Проверка работоспособности PerlДля проверки работоспособности Perl используйте такой скрипт (помещенный, разумеется, в директорию cgi-bin или аналогичную): #!/usr/local/bin/perl Скрипт должен выдать надпись "It works!". 7. Установка MySQL Конечно, поддержка баз данных MySQL может и не понадобится, но уж лучшее ее все-таки подключить. 7.1 Установка MySQL
Напишите простенький скрипт и сохраните его в директории e:/www/, назвав, скажем, test_sql.php. Листинг скрипта: Обращаю Ваше внимание на макросы DBName, HostName, UserName и Password. DBName должен содержать имя базы данных. HostName - всегда localhost, ведь мы работаем на локальном компьютере. В макросе UserName проще всего подставлять root, который является собственником всех таблиц. При установке MySQL пользователю root не назначается пароль, так что макрос Password равен пустой строке. | |
Просмотров: 782 | Комментарии: 1 | Рейтинг: 0.0/0 |
Всего комментариев: 0 | |