Я пытался создать поддомен в своей локальной среде разработки, dev.localhost
. Я использую Ubuntu 11.10 и Apache2. До сих пор я отредактировал свой файл хоста, включив в него строку 127.0.0.1 dev.localhost
. Я создал файл под названием axis
в /etc/apache2/sites-available
что выглядит так:
<VirtualHost *:80>
DocumentRoot /var/www/Axis/trunk
ServerName dev.localhost
ServerAlias *.localhost
<Directory /var/www/Axis/trunk/>
Options Indexes FollowSymLinks MultiViews +Includes
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Затем я включил сайт с помощью sudo a2ensite axis
. Я обнаружил ошибку без имени хоста и добавил строку ServerName localhost
к моему default
файл в sites-available
. Я также столкнулся с ошибкой, связанной с NameVirtualHost
, который я решил, добавив NameVirtualHost *:80
к httpd.conf
а также комментируя это в ports.conf
.
Теперь, когда я перехожу к dev.localhost
Я получаю такую же веб-страницу, как если бы я перешел на localhost
. Другими словами, оба localhost
и dev.localhost
указать на /var/www
но я хочу dev.localhost
указать на /var/www/Axis/trunk
.
Есть идеи, где я ошибаюсь? Спасибо
РЕДАКТИРОВАТЬ: вывод из apache2ctl -S
ulimit: 88: error setting limit (Operation not permitted)
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80 is a NameVirtualHost
default server localhost (/etc/apache2/sites-enabled/000-default:1)
port 80 namevhost localhost (/etc/apache2/sites-enabled/000-default:1)
port 80 namevhost dev.localhost (/etc/apache2/sites-enabled/axis:1)
Syntax OK
Вам нужно установить свой /etc/hosts
или C:\Windows\system32\drivers\etc\hosts
(как администратор), чтобы отразить «поддомен». Так что добавьте 127.0.0.1 dev.localhost
в любой файл (в зависимости от вашей платформы).
Однако может оказаться, что «localhost» как есть несколько особенный с точки зрения разрешения доменного имени, поскольку он может не работать как домен. Вместо этого вы можете поставить что-то вроде mylan.local
как имя сервера и dev.mylan.local
как субдомен. (вы можете в основном использовать там все, что хотите)
И в конце не забудьте перезагрузить Apache с помощью apache2ctl restart
так как ему необходимо перезагрузить его config.