

Для разработки страниц сайта написанных с использованием современных серверных технологий необходим тестовый сервер установленный на ваш компьютер.
см. создание ярлыков
Установка, настройка - Apache, PHP, Perl, Mysql, phpmyadmin, внесение изменений в файлы конфигурации - php.ini, httpd.conf, httpd-vhosts.conf, httpd-userdir.conf - об этом вы можете узнать в соответствующих разделах сайта.
Концепция виртуальных хостов позволяет создавать, конфигурировать и обслуживать на одном (физическом) веб-сервере Apache множество сайтов. Виртуальный хост может быть «привязанным к IP-адресу», - используется отдельный IP-адрес для каждого сайта или «привязанным к имени» - один IP-адрес для нескольких сайтов с различными именами.
C:\Program Files\Apache Software Foundation\Apache2.2\conf\extra\httpd-userdir.conf
# Settings for user home directories
# Параметры настройки для каталогов пользователей
# Required module: mod_userdir Требуемый модуль: mod_userdir
# UserDir: The name of the directory that is appended onto a user's home
# directory if a ~user request is received. Note that you must also set
# the default access control for these directories, as in the example below.
# Оригинал - UserDir "My Documents/My Website"
Создадим три каталога, где будут храниться файлы сайтов пользователей
UserDir "www/docs"
UserDir "www/htdocs"
UserDir "www/public_html"
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
# Оригинал - <Directory "C:/Documents and Settings/*/My Documents/My Website">
# Каталог виртуальных хостов - C:/www/docs
<Directory "C:/www/docs">
AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
# Каталог виртуальных хостов - C:/www/htdocs
<Directory "C:/www/htdocs">
AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
# Каталог виртуальных хостов - C:/www/public_html
<Directory "C:/www/public_html">
AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
Файл hosts находится в C:\WINDOWS\system32\drivers\etc\hosts
Пример файла hosts.
Это образец файла HOSTS, используемый Microsoft TCP/IP для Windows.
#
# Этот файл содержит сопоставления IP-адресов именам узлов.
# Каждый элемент должен располагаться в отдельной строке. IP-адрес должен
# находиться в первом столбце, за ним должно следовать соответствующее имя.
# IP-адрес и имя узла должны разделяться хотя бы одним пробелом.
#
# Кроме того, в некоторых строках могут быть вставлены комментарии
# (такие, как эта строка), они должны следовать за именем узла и отделяться
# от него символом '#'.
#
# Например:
#
# 102.54.94.97 rhino.acme.com # исходный сервер
# 38.25.63.10 x.acme.com # узел клиента x
# Адреса, начинающиеся с 127.* и 255.*, зарезервированы для специальных целей.
#
# Локальные IP-адреса начинающиеся со 127 - указывают на локальный компьютер
# Когда вы делаете запрос - вводите в адресную строку браузера адрес,
# например - rhino.acme.com, то он начинает просмотр с предварительно загруженного
# кэша сопоставления имен клиентов, т. е. с этого файла
#
# Если ваш сайт уже размещен на сервере провайдера и на локальном сервере
# Apache 2.2.16 вашего компьютера, с одинаковыми доменными именами,
# например - www.name.ru то при подключении к Интернету и наборе этого имени,
# он будет загружен с локального сервера.
# Чтобы увидеть его из Интернета, нужно, поставить знак комментария (#)
# перед записью - #127.0.0.6 www.name.ru
# В данном файле происходит сопоставление 32-разрядного IP-адреса - имени домена
# Каждая строка в файле Hosts должна содержать IP-адрес, за которым следуют
# одно или несколько имен узлов.
# 127.0.0.1 localhost
# Чтобы главный сайт сервера был доступен по имени - www.httpserver.ru
# допишем его после localhost
127.0.0.1 localhost www.httpserver.ru # Это комментарий
# если в httpd-vhosts.conf имеются следующие секции виртуальных хостов
# основанных на IP-адресах.:
# <VirtualHost 127.0.0.6:80>
# ServerAdmin webmaster@name.ru
# DocumentRoot /www/htdocs/name.ru/www
# ServerName www.name.ru
# ErrorLog c:/www/htdocs/name.ru/logs/name.ru-error.log
# CustomLog c:/www/htdocs/name.ru/logs/name.ru-access.log common
# <IfModule alias_module>
# ScriptAlias /cgi-bin/ "c:/www/htdocs/name.ru/cgi-bin/"
# </IfModule>
# <IfModule mime_module>
# AddOutputFilter INCLUDES .shtml .php
# </IfModule>
# <Directory "c:/www/ htdocs /name.ru/www">
# Options Indexes
Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
# AllowOverride All
# Order allow,deny
# Allow from all
# AddHandler server-parsed .shtml .shtm .html .htm
# </Directory>
# </VirtualHost>
#
# и
#
#<VirtualHost 127.0.0.7:80>
# ServerAdmin webmaster@name1.ru
# DocumentRoot /www/public_html/name1.ru/www
# ServerName www.name1.ru
# ErrorLog c:/www/public_html/name1.ru/logs/name1.ru-error.log
# CustomLog c:/www/public_html/name1.ru/logs/name1.ru-access.log
common
# <IfModule alias_module>
# ScriptAlias /cgi-bin/ "c:/www/public_html/name1.ru/cgi-bin/"
# </IfModule>
# <Directory "c:/www/public_html/name1.ru/www">
# Options Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
# AllowOverride All
# Order allow,deny
# Allow from all
# AddHandler server-parsed .shtml .shtm
# </Directory>
# </VirtualHost>
#
# То в этом файле должны быть записи:
127.0.0.6 www.name.ru
127.0.0.7 www.name1.ru
# если в httpd-vhosts.conf имеются следующие секции виртуальных хостов
# на основе имени:
# NameVirtualHost 127.0.0.8:80
# ==================
# Сайт - www.dummy-host.httpserver.ru - www. кукла-host.httpserver.ru
# <VirtualHost 127.0.0.8:80>
# ServerAdmin webmaster@dummy-host.httpserver.ru
# DocumentRoot c:/www/docs/dummy-host.httpserver.ru
# ServerName www.dummy-host.httpserver.ru
# ServerAlias www.dummy-host.httpserver.ru
# ErrorLog c:/www/docs/dummy-host.httpserver.ru/logs/dummy-host.httpserver-error.log
# CustomLog c:/www/docs/dummy-host.httpserver.ru/logs/dummy-host.httpserver-access.log common
# </VirtualHost>
#
# и
#
# Сайт - www.dummy-host2.httpserver.ru - www. кукла-host2.httpserver.ru
# <VirtualHost 127.0.0.8:80>
# ServerAdmin webmaster@dummy-host2.httpserver.ru
# DocumentRoot c:/www/docs/dummy-host2.httpserver.ru
# ServerName www.dummy-host2.httpserver.ru
# ServerAlias www.dummy-host2.httpserver.ru
# ErrorLog c:/www/docs/dummy-host2.httpserver.ru/logs/dummy-host2.httpserver-error.log
# CustomLog c:/www/docs/dummy-host2.httpserver.ru/logs/dummy-host2.httpserver-access.log common
# </VirtualHost>
#
# То в этом файле должны быть записи:
127.0.0.8 www.dummy-host.httpserver.ru
127.0.0.8 www.dummy-host2.httpserver.ru
internet.cmd
с таким содержанием:
copy C:\httpserver.ru\hosts_internet C:\WINDOWS\system32\drivers\etc\hosts
rem pause
server.cmd












На следующей странице приведено описание правил позволяющих избежать ошибок при установке сервера Apache 2.2.16.