Зачем нам нужен веб сервер?
Скачиваем программное обеспечение:
Щёлкаем на кнопочку "Next", появляется следующее окно с лицензией, нам её нужно принять, а вот если откажемся, то произойдет выход, нам та это не нужно, значит соглашаемся с ней: Выбираем: "I accept the terms in the agreement". Далее активируется кнопочка "Next", и щёлкаем на неё, т.е. соглашаемся с самой лицензией, что нам в ней рассказывали нам конечно же всё-равно, лишь бы сервер установить. Потом появляется вот это окошко: Тут нам хотят рассказать, что это за чудо-сервер Apache. Самое главное, мы знаем, что это хороший веб сервер. Больше нам ничего не нужно, т.е. читать это всё не будем, неинтересно, щёлкаем на "Next", появляется очередное окошко: В этом окошке нам предлагают ввести информацию о нашем будущем веб сервере, заполняем её следующим образом:
Появляется следующее окошко: Тут нам предлагают выбрать тип установки, полную (врут, не совсем полную) и выборочную, установим полную версию, т.е. выбираем "Custom" и щёлкнем на "Next". Видим следующее окошко: Здесь нам нужно выбрать, что будем устанавливать и самое главное куда. Щёлкните на крестик, напротив которого написано "Build Headers and Libraries", появится менюшка, в ней нужно выбрать "This feature will be installed on local hard drive". Осталось выбрать папку, куда и установиться сам сервер. Щёлкаем на кнопочку "Change…", появится вот такое окно: Как появится, сразу же щёлкаем на кнопочку "Finish". Окошко закроется, сервер установлен. После всего этого, в правом нижнем углу у Вас появится, пёрышко с кружком, в котором виден перевёрнутый треугольник. На картинке, перо расположено слева (оно будет появляться при каждом запуске Windows). Щёлкните на него пару раз левой клавишей своей мышки, появится чудо-окошко: Можно сказать, что это - небольшая панелька для управления нашим веб сервером. Не удивляйтесь, что мы видим "Apache2", а не просто "Apache", так и должно быть. Итак, разберём эту панельку попорядочку, щёлкнув по кнопочке "OK", это окошко просто-таки закроется и ничего плохого не произойдёт. Далее вы видим ненажимаемую кнопочку "Start", ненажимаемая она потому, что наш веб сервер уже запущен, а сама кнопочка означает – запустить или же по-русски, включить сервер. Следом идёт кнопка "Stop", на неё можно нажать. Нажав на неё, наш любимый веб сервер, отключиться. Далее мы видим замечательную кнопочку "Restart" (не забывайте про эту кнопочку, когда я буду говорить, перезапустите свой веб сервер), означает она следующее, перезагрузить сам сервер, перезагружать его советую, только тогда, когда Вы изменили конфигурационные файлы (об этом чуть позже). Следующая кнопка "Services" (нажать на неё можно не во всех версиях Windows), она, можно сказать, Вам вообще не пригодиться. Так что обсуждаем эту кнопочку даже и не будем. Далее видим кнопку "Connect", нажав на неё можно соединиться с удалённым сервером, нам это тоже не понадобиться так что, тоже не обсуждаем. Предпоследняя кнопочка "Disconnect", она не нажимаемая т.к. нажимаемой она станет, только тогда, когда удачно произойдёт соединения при нажатии на кнопку "Connect". Так что забываем про эту кнопочку, и переходим к кнопке "Exit". Нажав на неё, панелька закрывается. Вновь запустить её можно следующим образом, щелкнем на кнопочку "Пуск", она находится в левом нижнем углу, выбираем "Программы", далее "Apache HTTP Server 2.0.43", потом "Control Apache Server" и щёлкаем на "Monitor Apache Servers". В нижнем правом углу, опять же появится наше старое, любимое пёрышко, с перевёрнутым треугольничком в кружке. Если Вы не совсем поняли, в какую папку был установлен сам сервер, то подскажу установлен он был на диск D:\ в папку server Вы, небось, всё удивляетесь почему, Apache2, а не просто Apache, напомню, что версия нашего сервера 2.0.43 Внутренности папки Apache2, должны выглядеть вот так: Откройте свой обозреватель, в строке адреса, введите http://localhost (так же, можно ввести http://127.0.0.1 – это синоним от http://localhost). В нашем случае, если веб сервер установлен удачно, то в своём обозревателе Вы должны увидеть следующий результат: Если Вы видите это окошко, то поздравляю, веб сервер установлен удачно. Открываем знакомую папку, на своём рабочем столе с именем install_server, находим в ней архив php_v4_2_3.exe, разархивируем в папку php_v4_2_3, переименовываем её в php4, и копируем на диск D:\ а именно в папку server, т.е. у нас получается, что папка php4, теперь находится в директории D:\server Так-с, теперь нужно открыть конфигурационный файл нашего любимого и причём уже установленного веб сервера Apache, т.е. проще говоря, залезаем в папку D:\server\Apache2\conf А вписываем, вот что (выделите нужное, нажмите правую кнопку мышки, выберите копировать, вставлять так же, только вот выбирать нужно вставить): # Файл специально отредактирован под статью "Установка полноценного веб сервера" # Устанавливаем SSI, для файлов с расширением shtm и shtml AddType text/html .shtm .shtml AddOutputFilter INCLUDES .shtm .shtml # Даём знать веб серверу, что у нас есть PHP интерпретатор ScriptAlias /php4/ "D:/server/php4/" Action application/x-httpd-php4 "/php4/php.exe" # Устанавливаем расширения для PHP скриптов AddType application/x-httpd-php4 .htm .html .php .php3 .php4 .phtm .phtml # Папка куда установлен наш веб сервер ServerRoot "D:/server/Apache2" PidFile logs/httpd.pid Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 HostnameLookups Off # Порт, который слушает наш веб сервер Listen 80 # Модули LoadModule access_module modules/mod_access.so LoadModule actions_module modules/mod_actions.so LoadModule alias_module modules/mod_alias.so LoadModule asis_module modules/mod_asis.so LoadModule auth_module modules/mod_auth.so LoadModule autoindex_module modules/mod_autoindex.so LoadModule cgi_module modules/mod_cgi.so LoadModule dir_module modules/mod_dir.so LoadModule env_module modules/mod_env.so LoadModule imap_module modules/mod_imap.so LoadModule include_module modules/mod_include.so LoadModule isapi_module modules/mod_isapi.so LoadModule log_config_module modules/mod_log_config.so LoadModule mime_module modules/mod_mime.so LoadModule negotiation_module modules/mod_negotiation.so LoadModule setenvif_module modules/mod_setenvif.so LoadModule userdir_module modules/mod_userdir.so # E-mail адрес админа веб сервера (поменяйте на свой) ServerAdmin localhost@127.0.0.1 # Наш сервер:порт ServerName localhost:80 UseCanonicalName Off # Папка, где будут храниться наши html, php и другие файлы DocumentRoot "D:/server/www" # Индексные файлы, через пробел DirectoryIndex index.htm index.html index.shtm index.shtml index.php index.php3 index.php4 # Имя встроенного конфигурационного файла AccessFileName .htaccess # Закрываем доступ к файлам конфигурации (.htaccess) и паролей (.htpasswd) <Files ~ "^\.ht"> Order allow,deny Deny from all </Files> # База с типами файлов TypesConfig conf/mime.types # Тип всех документов - текстовый DefaultType text/plain <IfModule mod_mime_magic.c> MIMEMagicFile conf/magic </IfModule> # Файл отчёта с ошибками ErrorLog logs/error.log # Что записывать в файл отчёта, может принимать следующие значения: # debug, info, notice, warn, error, crit, alert, emerg. LogLevel warn # Шаблон записи строки в файл отчёта LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent # Файл отчёта со списком всех доступов к веб серверу CustomLog logs/access.log common ServerTokens Full # Подпись веб сервера (On - включена, Off - отключена, EMail - показывать e-mail админа сервера) ServerSignature On # Виртуальные папки # Например: # Alias /icons/ "d:/server/Apache2/icons/" # Зайдя на http://localhost/icons/ мы увидем содержимое папки d:/server/Apache2/icons/ Alias /icons/ "D:/server/Apache2/icons/" # Папка длс CGI, для PERL скриптов ScriptAlias /cgi-bin/ "D:/server/cgi-bin/" <Directory "D:/server/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) text/* AddIconByType (IMG,/icons/image2.gif) image/* AddIconByType (SND,/icons/sound2.gif) audio/* AddIconByType (VID,/icons/movie.gif) video/* # Выбираем иконки для различных форматов AddIcon /icons/binary.gif .bin .exe AddIcon /icons/binhex.gif .hqx AddIcon /icons/tar.gif .tar AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip AddIcon /icons/a.gif .ps .ai .eps AddIcon /icons/layout.gif .html .shtml .htm .pdf AddIcon /icons/text.gif .txt AddIcon /icons/c.gif .c AddIcon /icons/p.gif .pl .py AddIcon /icons/f.gif .for AddIcon /icons/dvi.gif .dvi AddIcon /icons/uuencoded.gif .uu AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl AddIcon /icons/tex.gif .tex AddIcon /icons/bomb.gif core AddIcon /icons/back.gif .. AddIcon /icons/hand.right.gif README AddIcon /icons/folder.gif ^^DIRECTORY^^ AddIcon /icons/blank.gif ^^BLANKICON^^ # Иконка для неизвестных форматов DefaultIcon /icons/unknown.gif # Если выводится содержимое какой-либо папки, cчитываются файлы описания: ReadmeName README.html HeaderName HEADER.html # Файлы для игнорирования, при выводе листинга директории IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t AddEncoding x-compress Z AddEncoding x-gzip gz tgz # Наша кодировка AddDefaultCharset WINDOWS-1251 # CGI, PERL скрипты AddHandler cgi-script .cgi .pl Теперь сохраняем. Всё, конфигурационный файл нашего сервера мы отредактировали. Сейчас создайте папки www и cgi-bin в директории D:\server В папке www, будут храниться html, php и другие файлы… В папке cgi-bin, будут храниться perl скрипты… Теперь наша папочка веб сервера, должна выглядеть так: (Как? Об этом я рассказывал чуть выше, вспомните пёрышко) Всё сделали, нажимаем на кнопку "OK". После нажатия, останется, то самое окошко, где мы искали расширение "TXT", с типом "Текстовый файл", в нём щёлкаем тоже на "OK". Откройте этот файл в блокноте, теперь в пишете в него следующее: <? echo "-0-"; ?> Открываем нам уже известную папку на своём рабочем столе install_server, находим в ней архив zend_optimizer_v2_0_3.exe Разархивируем его в папку zend_optimizer_v2_0_3 Теперь открываем её и запускаем файл zend_optimizer_v2_0_3.exe (расширение .exe будет скрыто), идёт подготовка к установке, появляется вот такое окошко: Открываем очень знакомую папку install_server на своём рабочем столе, разархивируем архив active_perl_v5_8_0.exe в папку active_perl_v5_8_0 Теперь запускаем файл active_perl_v5_8_0.msi (расширение .msi будет скрыто). Появляется окошко: Т.е. ставим галочку. Видим последнее окошко перед самой установкой Perl интерпретатора: Установка Perl интерпретатора занимает некоторое время, даже появится эффект зависания, но не бойтесь компьютер не завис, просто дождитесь вот такого окошка: Щёлкаем на кнопочку "Finish". Установка Perl интерпретатора завершена, далее откроется Ваш обозреватель, а в нём документация по Perl языку, если Вам она не интересна, то просто закройте окно обозревателя. Теперь папка нашего сервера, а именно D:\server выглядит так: #!perl print "Content-type: text/html\r\n\r\n"; print "-0-"; Открываем теперь уже, наверное, нашу самую любимую папку install_server на рабочем столе. Находим в ней архив mysql_v3_23_53.exe и разархивируем его в папку mysql_v3_23_53 Теперь открываем эту cамую папку и запускаем файл setup.exe (расширение .exe будет скрыто) Появляется такое окошко:
Он нам говорит, что MySQL сервер настроен верно, т.е. он готов к работе. Зайдём в папку D:\server\www Как Вы помните, это папка с нашими PHP скриптами и HTML документами. Откроем файл index.php И впишем в него следующее: <?# Адрес нашего MySQL сервера $mysql_host = "localhost"; # Пользователь, который осуществляет соединение $mysql_user = "root"; # Пароль для доступа к MySQL базе $mysql_password = "password"; # Соединяемся с MySQL сервером $mysql = mysql_connect($mysql_host, $mysql_user, $mysql_password); if ($mysql) {echo "MySQL :)";} else {echo "MySQL :(";} # Закрываем соединение mysql_close($mysql); ?> Открываем нашу, более чем уже знакомую папку на рабочем столе install_server Находим в ней архив courier_mail_server_v1_54.exe разархивируем его в папку courier_mail_server_v1_54 Переименовываем эту папку в mail_server И копируем в директорию нашего сервера, а именно в D:\server Получается, что теперь папка нашего сервера выглядит так: Видим следующее:
<? $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/plain; charset=windows-1251\r\n"; $headers .= "From: Проверка почтового сервера if (mail("admin@127.0.0.1", "Тестовое сообщение", "Текст", $headers)) { echo "Почтовый сервер работает правильно"; } else { echo "Почтовый сервер не работает"; } ?> Открываем всё туже чудо-папку на своём рабочем столе, а именно install_server Ищем в ней архив pablos_ftp_server_v1_52.exe Разархивируем его в папку pablos_ftp_server_v1_52 Теперь переименовываем её в ftp_server и копируем в директорию нашего сервера D:\server Получается, что теперь папка нашего сервера выглядит так: Появляется такое окошко:
Нам предлагают ввести имя пользователя, смело вводим: access 230 User successfully logged in. Откроем папку D:\server\cgi-bin #!perl print "Content-type: text/html\r\n\r\n"; $sendmail = 'd:/server/sendmail/sendmail.exe'; $address = 'admin@127.0.0.1'; if (-f $sendmail) { open (MAIL, "|$sendmail -t"); print MAIL "MIME-Version: 1.0\n"; print MAIL "Content-Type: text/plain; charset=windows-1251\n"; print MAIL "To: admin <$address>\n"; print MAIL "From: Проверка почтового сервера <$address>\n"; print MAIL "Subject: Проверка программы SendMail\n"; print MAIL "Текст тестового письма"; close (MAIL); print "SendMail программа найдена :)"; } else {print "SendMail программа не найдена :(";} http://localhost/cgi-bin/index.pl и нажимаем "Enter", если всё удачно, то в окне своего обозревателя Вы увидите: Открываем папку install_server на своём рабочем столе, ищем в ней архив crontab.exe Разархивируем его в папку crontab, теперь копируем её в директорию нашего уже горячо любимого сервера, а именно в D:\server Получается, что папка сервера теперь выглядит так: Находим в ней файл crontab.exe (расширение .exe будет скрыто) Запускаем его, кливнув по файлу два раза левой клавишей мышки, CronTab запустится, но Вы ничего не увидите, он работает незаметно для Ваших глаз, все задания нужно записывать в файл crontab (без расширения) Находится он в той же папке, что и сам crontab.exe А именно в D:\server\crontab Отключить CronTab можно следующим образом: нажимаем один раз CTRL + ALT + DELETE, появляется такое окошко: Вот так вот отключается CronTab. Немного полезного: 1. Веб сервер, php, perl интерпретаторы, обработч Ptяинарных php скриптов и MySQL сервер, запускается автоматически, вместе с загрузкой самой операционной системой Windows. А вот почтовый и ftp сервера, вместе с CronTab нужно запускать вручную, не забывайте об этом, sendmail сам по себе, путь к нему указывается в perl скриптах. 2. Первая строчка в perl скриптах (это файлы с расширением pl и cgi, например: file.pl, example.cgi) должна быть: #!perl или #!d:/server/perl/bin/perl.exe или просто #!d:/server/perl/bin/perl Так же в таком скрипте обязательно, должна присутствовать строчка: print "Content-type: text/html\r\n\r\n"; или print "Content-type: text/html\n\n"; 3. Sendmail работает, только, тогда когда включен почтовый сервер, пример скрипта отсылки письма на какой-нибудь e-mail адрес, используя sendmail, смотрите в разделе установка sendmail. 4. CHMOD, проще говоря, права доступа для файлов на операционной системе Windows устанавливать не нужно, главное, что бы с файлов в которые выполняется запись какой-либо информации был снят атрибут только чтение. 5. SSI работает в файлах с расширениями: shtm и shtml (например: file.shtm, example.shtml) 6. Php код работает в файлах с расширениями: htm, html, php, php3, php4, phtm, phtml (примеры файлов: file.htm, example.html, super.php, ultra.php3, dir.php4, country.phtm, city.phtml) 7. Картинки не будут работать, если Вы их поместити в папку cgi-bin своего сервера, кладите их в www …ещё много чего полезного и интересного можно написать или же рассказать, но я Вас уже утомил, да и надоел наверное со своими бреднями. Всего хорошего… |