так что у меня site1.com и 192.168.1.100
Если я использую IP-адрес, Apache не работает для site1.com, если я использую site1.com, IP-адрес не работает. Мысли?
Могу я получить оба?
Мне нужно получить доступ к IP и site1.com, чтобы они указывали на разные каталоги (разные проекты)
Site1.com
#NameVirtualHost site1.com:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/www/site1.com/current/web
ServerName site1.com
ServerAlias site1.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/site1.com/current/web/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/app_error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/app_access.log combined
</VirtualHost>
Айпи адрес
NameVirtualHost 192.168.1.100:80
<VirtualHost 192.168.1.100:80>
#<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/www/ip/current/
ServerName 192.168.1.100
ServerAlias 192.168.1.100
<Directory /home/www/ip/current/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/ip_error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/ip_access.log combined
</VirtualHost>
ОБНОВЛЕНО с решением
Site1.com
#NameVirtualHost site1.com:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/www/site1.com/current/web
ServerName site1.com
ServerAlias site1.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/site1.com/current/web/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/app_error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/app_access.log combined
</VirtualHost>
Айпи адрес
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/www/ip/current/
ServerName 192.168.1.100
#ServerAlias 192.168.1.100
<Directory /home/www/ip/current/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/ip_error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/ip_access.log combined
</VirtualHost>
Установите виртуальный хост без ServerName в качестве универсального виртуального хоста:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/www/ip/current/
<Directory>
...
Обе ваши директивы VirtualHost должны соответствовать директиве NameVirtualHost. Так что вы должны либо использовать *:80
в обе VirtualHost и в имени VirtualHost, или вы используете 192.168.1.100:80
во всех местах.
Вам также не нужно устанавливать то же имя, что и ServerName
и ServerAlias
. ServerAlias
предназначен для любых дополнительных имен, которые вы хотите назначить этому виртуальному хосту, в дополнение к ServerName
.