Рассылка закрыта
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Обучение и статьи по языку php
Информационный клуб webмастеров Kwazar: http://kwazar.lgg.ru Доброго времени суток вам! Я рад представить вам первый выпуск моей рассылки по теме:обучение и статьи по языку php. Эта небольшая статья поможет Вам скачать и установить один из лучших серверов - Apache, а также те приложения, из-за отсутствия которых народ в бешенстве сметает все остальные сервера (например, Sambar Server) со своего многострадального жесткого диска и устанавливает Apache для Windows 95/98. Имеются в виду, конечно php, MySQL, также работающие под Windows. Прочитав эту статью и скачав дистрибутивы, Вы будете вооружены всеми инструментами, которые так необходимы для профессиональной работы в Web! 1. Введение - зачем нужен домашний виртуальный сервер? "Ну к чему все это, лучше бы водки выпили" Из писем Белинского Гоголю Если Вы читаете этот документ, а также если у Вас установлен Windows 95/98 , значит, Вы уже столкнулись с проблемой виртуального домашнего сервера, а точнее, с проблемой его отсутствия! Эта небольшая статья поможет Вам скачать и установить один из лучших серверов - Apache, а также те приложения, из-за отсутствия которых народ в бешенстве сметает все остальные сервера (например, Sambar Server) со своего многострадального жесткого диска и устанавливает Apache для Windows 95/98. Имеются в виду, конечно PHP3 и MySQL, также работающие под Windows. Прочитав эту статью и скачав дистрибутивы, Вы будете вооружены всеми инструментами, которые так необходимы для профессиональной работы в Web! Обращаем Ваше внимание: бытует мнение, что MySQL (а тем более для Windows 95/98) нельзя получить бесплатно, а можно только купить. Так вот, можете вздохнуть с облегчением: MySQL для Windows 95/98 существует, и ее установка не будет стоить Вам и копейки! Поговорим теперь с теми пользователями Windows 95/98, которые заглянули сюда из простого любопытства. Часто возникает ситуация, когда необходимо проверить полный вид html-страницы. Однако чаще всего это невозможно при работе дома - технологии SSI и CGI, например, точно требуют сервера. Как же быть? Не стоит впадать в апатию - нужно просто установить на Ваш домашний компьютер (пусть даже и не подключенный к Интернет) специальную программу - Web-сервер. Вообще-то серверов существует множество - плохие и хорошие, медленные и быстрые... Мы же выбрали сервер, подходящий под последние две категории, - Apache. Самое главное то, что это чуть ли не единственный сервер, который позволяет работать в Windows 95/98 с технологиями php-скриптами так же просто и непринужденно, как будто у Вас стоит Unix. 2. От слов к делу - установка Apache "У меня для вас две новости: плохая и хорошая. Плохая: мяса мало, будем есть бизоний помет. И хорошая: его-то у нас много!.." Из выступления вождя апачей Итак, Вы решились установить на свой компьютер Apache для Windows 95/98. В таком случае Вам следует запастись терпением и для начала скачать дистрибутив сервера - файл с именем apache_setup.exe. Скачали? Прекрасно. Теперь самое интересное - настройка Apache для Вашей системы. Важно: мы попросим Вас в точности выполнять перечисленные ниже шаги, не пропуская и не откладывая ни одного. В этом случае все заработает - это проверено. Этап первый - установка Определитесь с директорией, в которую Вы будите устанавливать Apache. Все дальнейшие рассуждения основаны на том, что Вы выбрали для этой цели такой каталог: f:\usr\local\apache Если диска F: у Вас нет, или если Вы не хотите его захламлять, советуем сделать одно из трех: Создайте диск F: с помощью какой-нибудь программы для виртуальных разделов (например, с помощью встроенной в Windows 95/98 программы DriveSpace). Это самое лучшее решение, и с точки зрения экономии памяти, и с точки зрения быстродействия. Ведь что такое Web-сайт, как не набор очень небольших файлов? А DriveSpace как раз и оптимизирует работу с такими файлами. Сделайте виртуальный диск F:. Для этого создайте где-нибудь на любом диске директорию, которая в будущем будет являться корневой для диска F:. Предположим, Вы выбрали C:\INTERNET. Далее, в начале файла c:\autoexec.bat пропишите такую строку: subst f: C:\INTERNET и перезагрузите компьютер. У вас должен появиться виртуальный пустой диск F:. ВНИМАНИЕ: имеются сведения, что в Windows 95/98 есть ошибка, в результате которой иногда subst-пути "сами по себе" преобразуются в абсолютные. То есть, например, иногда в рассмотренном выше примере команды f: cd \ cd \ dir (а точнее, команда dir в своем заголовке) ошибочно выведут, что текущая директория C:\ (а не F:\, как это должно быть). Указанная ошибка чаще всего проявляется в неработоспособности Perl-транслятора. Так что лично мы не рекомендуем Вам использовать subst. Вместо этого воспользуйтесь пунктом 1. Наконец, Вы можете всего этого не делать и поставить Apache на любой другой диск, только тогда Вам придется немного тяжелее при выполнении всех остальных действий. Нужно будет все указываемые пути заменять на Ваши собственные, а это крайне неприятно. Еще раз настоятельно рекомендуем воспользоваться диском F:. Рекомендуем все же разместить Apache в указанном в начале каталоге, так как он максимально соответствует каталогу для реального Web-сервера Интернета. Ведь чем ближе в плане конфигурации мы будем к такому серверу, тем лучше и эффективнее сможем работать. Запустите только что скачанный файл. В появившемся диалоге нажмите кнопку Yes, а затем - кнопку Next. Теперь нажмите Browse. Вручную задайте директорию для установки: f:\usr\local\apache и нажмите кнопку OK. Выберите тип установки - Сustom и уберите флажок Source Code (если, конечно, не хотите посмотреть исходные тексты Apache). Этим Вы сэкономите себе 3 Мбайта. Нажмите Next и подождите, пока будут копироваться файлы Apache. На запрос о перезагрузке компьютера ответьте "Перезагрузить". Поздравляем - Apache установлен! Теперь самое неприятное - его настройка. Этап второй - настройка файла конфигурации Apache mime.types Откройте директорию f:\usr\local\apache\conf. Откройте находящийся там файл mime.types. Найдите в нем такую строчку: text/html html htm Измените ее на text/html html htm shtml shtm sht Следует заметить, что если Вы по каким-то причинам не хотите портить файл mime.types, то можно вместо этого прописать в файле httpd.conf (см. ниже) строки вида AddType text/html html htm shtml shtm sht Этап третий - настройка файла httpd.conf Внимание! Это - самый ответственный момент установки. Просим соблюдать инструкции БУКВАЛЬНО. Откройте директорию f:\usr\local\apache\conf Откройте находящийся там файл httpd.conf. Это - единственный файл, который Вам осталось настроить. Вам предстоит найти и изменить в нем некоторые строки, а именно те, о которых упоминается далее. Во избежание недоразумений не трогайте все остальное. Следует заметить, что в нем каждый параметр сопровождается несколькими строками комментариев, разобраться в которых с первого раза довольно тяжело. Поэтому не обращайте на них внимание. В поле ServerAdmin укажите Ваш E-mail адрес, который будет показываться в сообщениях об ошибке сервера. Например: ServerAdmin my@email.com В поле ServerName напишите любое слово - на работе это не сказывается, например: ServerName ApacheServer Только не забудьте раскомментировать поле ServerName, то есть убрать символ "#" перед этим параметром (по умолчанию он закомментирован)! В поле DocumentRoot укажите ту директорию, в которой будут храниться Ваши html-файлы, например: DocumentRoot f:/www Разумеется, можете указать и любую другую директорию, если хотите. В любом случае, не забудьте ее создать, лучше сделайте это прямо сейчас! Найдите блок, начинающийся строкой <Directory /> и заканчивающийся </Directory> (вообще, такие блоки обозначают установки для заданной директории и всех ее поддиректорий). Его нужно изменить на: <Directory /> Options Indexes Includes AllowOverride All </Directory> Таким образом, в этом блоке будут храниться установки для всех директорий по умолчанию (т.к. это - корневая директория). Найдите аналогичный блок, начинающийся <Directory "f:/usr/local/apache/htdocs"> и заканчивающийся </Directory>. Там будет много комментариев, не обращайте на них внимание. Этот блок следует заменить на: <Directory "f:/www"> Options Indexes Includes AllowOverride All Order allow,deny Allow from all </Directory> Это - установки для директории с Вашими html-документами. Если хотите, можете установить другую директорию, главное, чтобы она совпадала с той, которая прописана в параметре DocumentRoot Идем дальше. Установите UserDir, например так: UserDir f:/home Это будет директория, в которой хранились бы домашние страницы пользователей, если бы это был настоящий Web-сервер, а также корневые каталоги виртуальных хостов (см. ниже). Не забудьте также создать этот каталог. Установите DirectoryIndex так: DirectoryIndex index.htm index.html Это - так называемые файлы индекса, которые автоматически выдаются сервером при обращении к какой-либо директории, если не указано имя html-документа. В принципе, можно добавить сюда и другие имена, например, index.phtml, если Вы будите работать с PHP и т.д. Найдите и пропишите такой параметр: ScriptAlias /cgi-bin/ "f:/cgi-bin/" Да, именно так, с двумя слэшами. Это будет та директория, в которой должны храниться Ваши CGI-скрипты. Если хотите, можете задать другое имя, например: ScriptAlias /mycgi/ "f:/mycgidir/" Подобный параметр говорит Apache о том, что, если будет указан путь вида http://localhost/cgi-bin, то на самом деле следует обратиться к директории f:/cgi-bin. Теперь следует найти и настроить блок параметров, начинающийся с <Directory "f:/cgi-bin"> и заканчивающийся </Directory>. Это - установки для Вашей CGI-директории (если Вы установили для нее другое имя на предыдущем шаге, соответственно модифицируйте путь). Там должно быть: <Directory "f:/cgi-bin"> AllowOverride All Options ExecCGI </Directory> Настройте следующий параметр: AddHandler cgi-script .bat .exe Это говорит Apache о том, что файлы с расширением .exe и .bat нужно рассматривать как CGI-скрипты. И последнее - установите: AddHandler server-parsed .shtml .shtm .sht Или, если Вы хотите, чтобы и обычные файлы html обрабатывались SSI, напишите так: AddHandler server-parsed .shtml .shtm .sht .html .htm Поздравляем - Вы настроили свой Apache, и он должен уже работать! Для запуска сервера нажмите Пуск->Программы->Apache Web Server->Start Apache as console app, при этом появится окно, очень похожее на Сеанс MS-DOS, и ничего больше не произойдет. Не закрывайте его и не трогайте до конца работы с Apache. Несколько слов о том, как можно упростить запуск и завершение сервера. В Windows можно назначить любому ярлыку функциональную комбинацию клавиш, нажав которые, Вы запустите этот ярлык. Так что щелкните правой кнопкой на панели задач, в контекстном меню выберите Свойства, затем Настройка меню и кнопку Дополнительно. В открывшемся Проводнике назначьте ярлыку Start Apache as console app комбинацию Ctrl+Alt+A, а ярлыку Shutdown Apache as console app - Ctrl+Alt+S Вот шаги, которые можно проделать для проверки работоспособности сервера: Проверка html: в директории f:/www с html-документами Apache создайте файл index.html. Теперь запустите браузер и наберите: http://localhost/index.html или просто http://localhost/ Загрузится Ваш файл. Проверка CGI: в директории f:/cgi-bin для CGI-скриптов создайте файл test.bat с таким содержанием: @echo off echo Content-type: text/html echo. echo. dir Теперь в браузере наберите: http://localhost/cgi-bin/test.bat В окне отобразится результат команды DOS dir. Проверка SSI: аналогична проверке html. Используйте, например, директиву <!--#exec cgi="/cgi-bin/test.bat"--> 3. Виртуальные хосты Apache - как это настроить? "Виртуальные хосты - хосты, имеющие уникальный адрес в Интернет, эмулируемые и поддерживаемые сервером" Древнее языческое заклинание Итак, Вы установили Apache. Получили, таким образом, директорию f:/www для хранения документов и f:/cgi-bin для CGI. Но вот беда: в Интернете вы поддерживаете несколько серверов, а Apache создал для вас только один. Конечно, можно структуру этих несколькох серверов хранить на одном сервере, однако проще и удобнее было бы создать несколько виртуальных хостов с помощью Apache, например, один с именем serv1 и адресом 127.0.0.2, а другой - с именем serv2 и адресом 127.0.0.3. (Конечно, вместо "serv1" и "serv2" Вам нужно будет указать желаемые имена Ваших виртуальных хостов. Советуем назвать их так же, как и на Вашем настоящем Web-сервере - это может многое упростить при программировании скриптов.) Как это принято в Unix, каждый сервер будет представлен своим каталогом в директории f:/home с именем, совпадающим с именем сервера. Например, сервер serv1 будет храниться в директории f:/home/serv1, которую Вам необходимо создать прямо сейчас. В этой директории будут находиться: файл access.log с журналом доступа к виртуальному серверу. файл errors.log с журналом ошибок сервера. директория www, где будут храниться html-документы. директория cgi для хранения CGI-программ. Последние две директории (www и cgi) Вам тоже необходимо создать прямо сейчас. Далее, для установки виртуального хоста необходимо сделать некоторые изменеия в файле конфигурации Apache httpd.conf (см. выше), а также в некоторых файлах Windows. Вот необходимые действия: Откройте директорию f:\usr\local\apache\conf. Откройте находящийся там файл httpd.conf. Перейдите в его конец, Вам предстоит добавить туда несколько строк. Пропишите следующие строки в конце файла после всех комментариев: #----serv1 <VirtualHost 127.0.0.2> ServerAdmin webmaster@serv1.ru ServerName serv1 DocumentRoot "f:/home/serv1/www" ScriptAlias /cgi/ "f:/home/serv1/cgi/" ErrorLog f:/home/serv1/error.log CustomLog f:/home/serv1/access.log common </VirtualHost> При желании можно добавить и другие параметры (например, DirectoryIndex и т.д.) Вообще, не переопределенные параметры наследуются виртуальным хостом от главного. Теперь надо немного подправить системный файл hosts, который находится в C:\WINDOWS\hosts (такого файла может не быть по умолчанию - в этом случае его надо создать). hosts - обычный текстовый файл, и в нем обычно заранее прописана только одна строка: 127.0.0.1 localhost именно эта строка и задает соответствие имени localhost адресу 127.0.0.1. (Ради справедливости следует сказать, что имя localhost работает и без указанной выше строки. Ну и выдумщики же эти парни из фирмы Microsoft!) Для нашего виртуального хоста надо добавить соответствующую строчку, чтобы файл выглядел так: 127.0.0.1 localhost 127.0.0.2 serv1 Этим Вы создадите виртуальных хост со следующими свойствами: Имя - serv1 Доступен по адресу http://serv1 (или http://127.0.0.2). Расположен, соответственно, в директории f:/home/serv1. Директория для хранения документов - f:/home/serv1/www, доступная по адресу http://serv1/. Директория для CGI - f:/home/serv1/cgi, доступная по адресу http://serv1/cgi/ Файлы журналов хранятся в f:/home/serv1 Ну вот, мы создали один виртуальный хост! Если будет необходимо сделать второй, нужно просто проделать аналогичные действия, заменив параметры, связанные с расположением хоста на диске. Главное, не забудьте в этом случае указать другой IP-адрес (лучше всего указывать их последовательно, начиная с 127.0.0.2, затем 127.0.0.3 и т.д. - в этом случае все работает корректно). Желательно также для этих целей не указывать IP-адрус http://127.0.0.1, так как это - адрес главного сервера. Кстати, необходимо заметить, что главный хост (невиртуальный, тот, который мы создали в раздулах 1 и 2) по-прежнему доступен по адресу http://127.0.0.1 или http://localhost. Более того, его директория cgi-bin "видна" всем созданным виртуальным хостам, так что Вы можете ее использовать. Установка PHP Создайте директорию f:/usr/local/php3 (если хотите другое имя, см. рассуждения выше). Это - та директория, в которую будет установлен PHP. Скачайте дистрибутив PHP - файл с именем (1.970.356 байт), желательно в только что созданную директорию. Это саморазворачивающийся zip-архив, который Вы должны будете запустить, чтобы разархивировать. По умолчанию он развернется в текущую директорию, так что будьте внимательны. Еще раз напоминаем: если Вы решили установить PHP в другую директорию, Вам необходимо вручную отредактировать файл php_iis_reg.inf с целью замены в нем имен директории на нужную (см. выше). В файле php3.ini из дистрибутива есть закомментированные строки, выглядящие так: ;extension=имя_модуля.dll Если Вы хотите включить какой-нибудь модуль (по умолчанию уже включена поддержка GD и mSQL), раскомментируйте соответствующую строку (уберите точку с запятой). Теперь в Проводнике Windows нажмите правой кнопкой мыши на файле php_iis_reg.inf и выберите в контекстном меню пункт Установить - этим Вы автоматически добавите в Реестр некоторые установки, касающиеся PHP. Скопируйте файл php3.ini в каталог с Windows (например, в c:\windows); Настройка Apache В файл конфигурации Apache conf/mime.types добавтьте такую строку: application/x-httpd-php3 phtml php3 Теперь откройте файл conf/httpd.conf и добавьте в его конец (но перед блоков виртуальных хостов, если они там есть) такие строки: <Directory "f:/usr/local/php3"> Options ExecCGI </Directory> ScriptAlias "/__php_dir__/" "f:/usr/local/php3/" Action application/x-httpd-php3 "/__php_dir__/php.exe" Ну вот, пожалуй, и все. Если Вы все сделали правильно, то PHP установлен. Проверьте его работоспособность с помощью простого скрипта, например такого: <? echo "It works!<br>\n"; phpinfo(); ?> Напоминаем, что php-скрипты - не то же самое, что cgi-скрипты. В частности, если cgi-скрипты обычно располагают в /cgi-bin/, то php-скрипт должен лежать в директории с документами. Иными словами, файл в этом примере должен называеться примерно так: f:/www/test.php3 5. Установка MySQL Сначала определимся: зачем же вообще нужны базы данных Web-программисту? Неужели не проще писать все самому? Ведь обычно объем данных не очень велик (если Вы только не пишите поисковую систему). Наш личный опыт таков: оказывается, стоит затратить какое-то время на изучение MySQL - это удивительно мощный инструмент, который сэкономит в будущем немало часов, потраченных на отладку "взбесившегося" скрипта. Итак, Вы решили установить у себя на локальном Apache поддержку MySQL. Как ни странно, это даже во многом проще, чем заставить работать Perl. Прежде чем привести точные инструкции, хотелось бы уточнить два момента: Эта статья не претендует ни в коей мере на то, чтобы быть учебником по MySQL. Предполагается, что Вы уже знаете, как работать с этой базой данных. Максимум, что здесь описывается - это то, как заставить MySQL работать под Window 95/98. В дальнейшем будем считать, что Apache у Вас установлен именно там, где это рекомендовалось выше. Что ж, приступим. Для начала запаситесь терпением и скачайте дистрибутив MySQL - mysql.zip. Как можно заметить, он довольно большой. Затем разверните его в любую удобную Вам директорию. Запустите setup.exe. Он спросит, действительно ли Вы хотите установить MySQL. После того, как Вы ответите утвердительно, файлы начнут копироваться в директорию c:/mysql, т.е. он даже не спросит Вас, куда устанавливать MySQL. Ничего страшного. Теперь, если Вы любите порядок, можете скопировать директорию c:/mysql в какое-нибудь более приличное место - например, f:/usr/local/. Только после этого строго следуйте указаниям в статье. Создайте в директории f:/usr/ такие два .bat-файла: server.bat: @echo off f:\usr\local\mysql\bin\mysqld.exe --basedir f:/usr/local/mysql f:\usr\local\apache\Apache.exe shutdown.bat: @echo off f:\usr\local\apache\Apache.exe -d f:\USR\LOCAL\APACHE -k shutdown "f:\usr\local\mysql\bin\mysqladmin.exe" -u root shutdown Файл server.bat Вы будете запускать, когда захотите "включить" Apache и одновременно MySQL (ясно, что бессмысленно запускать MySQL без сервера), а shutdown.bat - для завершения работы Apache и MySQL. Очень важно завершать работу MySQL правильно - иначе могут быть испорчены таблицы баз данных. Собственно, для этого мы и сделали эти два .bat-файла. (Кстати говоря, в отличие от Apache, у MySQL нет своего окна - ее процесс можно увидеть, лишь нажав Ctrl+Alt+Del. Это еще одна причина существования shutdown.bat). Теперь для удобства можно создать ярлыки на Рабочем столе для этих файлов. Рекомендуем также назначить этим ярлыкам "горячие" клавиши: например, для запуска сервера - Ctrl+Alt+A, а для завершения работы - Ctrl+Alt+S. Кроме того, лучше поставить у этих ярлыков параметры "Запускать свернутыми в значок". Все это сильно упростит жизнь в дальнейшем. Что ж, считайте, MySQL уже установлена. Осталось только создать базу данных. Для этого следует запустить f:/usr/local/mysql/bin/mysqladmin с ключем create имя_базы. Например, если мы хотим создать базу testbase, нужно ввести: f:/usr/local/mysql/bin/mysqladmin create testbase Если Вы планируете использовать MySQL в скриптах на PHP, проверьте, раскомментирована ли в файле php3.ini (расположенном в директории с PHP и в c:\windows) следующая строка: extension=php3_mysql.dll Если в ее начале стоит точка с запятой, уберите ее - иначе PHP не сможет опознавать функции для работы с MySQL. Поздравляем - теперь можно работать! Если хотите, можете проверить работоспособность MySQL следующим скриптом на PHP3 (скажем, расположенном в f:/www/test.php3): <? Error_Reporting(1+2+4); define("DBName","testbase"); define("HostName","localhost"); define("UserName","root"); define("Password",""); if(!mysql_connect(HostName,UserName,Password)) { echo "Не могу соединиться с базой ".DBName."!<br>"; exit; } // Создаем таблицу test. Если такая таблица уже есть, сообщение об ошибке будет // подавлено, т.к. используется "@" @mysql(DBName,"create table test(id int,a text)"); // Вставляем в таблицу 10 записей for($i=0; $i<10; $i++) { $id=time(); mysql(DBName,"insert into test(id,a) values($id,'Строка $i!')"); } // Выводим все записи $r=mysql(DBName,"select * from test"); for($i=0; $i<mysql_numrows($r); $i++) { $f=mysql_fetch_array($r); echo "$f[id] -> $f[a]<br>\n"; } ?> Обращаем Ваше внимание на макросы DBName, HostName, UserName и Password. DBName должен содержать имя базы данных. HostName - всегда localhost, ведь мы работаем на локальном компьютере. В макросе UserName проще всего подставлять root, который является собственником всех таблиц. При установке MySQL пользователю root не назначается пароль, так что макрос Password равен пустой строке. Ну вот,на дааный момент я расказал все что собирался. До встречи! Остальный рассылки автора: Обучение и статьи по языку perl: http://subscribe.ru/catalog/inet.webbuild.webc1/ Обучение и статьи по языку java: http://subscribe.ru/catalog/inet.webbuild.webc3/ Обучение и статьи по языку flash: http://subscribe.ru/catalog/inet.webbuild.webc4/
http://subscribe.ru/
E-mail: ask@subscribe.ru |
В избранное | ||