Вот мой файл конфигурации apache. У меня два доменных имени, работающих на одном IP-адресе, но я хочу, чтобы они указывали на разные веб-приложения. Но в данном случае оба указывают на тот, который предназначен для e-yantra.org.
Если я скопирую часть вставки akshar.co.in перед E-yantra.org, оба начнут указывать на akshar.co.in
У меня есть две записи DNS (по одной на доменное имя), указывающие на один и тот же IP-адрес.
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.e-yantra.org
ServerAdmin webmaster@e-yantra.org
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
<Directory /var/www/ci/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
<Directory /var/www/db2/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName www.akshar.co.in
ServerAdmin webmaster@akshar.co.in
DocumentRoot /var/akshar.co.in
<Directory /var/akshar.co.in/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Если вы перейдете на «www.akshar.co.in», он перейдет на вашу тестовую страницу (т.е. «привет, мир»).
Ваша проблема в следующем:
ServerName www.akshar.co.in
Это не соответствует, когда вы просто вводите «akshar.co.in» в качестве URL-адреса, даже если DNS указывает вам правильный IP-адрес.
Я бы порекомендовал следующее дополнение:
ServerAlias akshar.co.in *.akshar.co.in
Это позволит Apache перехватывать URL-адреса, не содержащие www (а также любые другие поддомены), и связывать их с соответствующим виртуальным хостом.
Я бы также порекомендовал эквивалентную инструкцию в другом определении виртуального хоста (чтобы убедиться, что все работает правильно, если вы расширяете и добавляете дополнительные сайты на сервер).