嗨,这是我的第一篇文章,希望你对我的新手技能有耐心:P
我尝试使用NameVirtualHostconfiguration我的apache2服务器(ubuntu)。 在这一刻,我有3个域指向我的静态IP; domain1.dyndns.org,domain2.com,domain3.com
我的愿望是,domain2.com和domain3.com将被configuration为虚拟主机指向他们的特殊目录。 像访问我的路由器(domain1.dyndns.org:8080)远程的所有其他HTTP请求将被指向domain1.dyndns.org并从那里访问。
现在我有一个问题从Apache服务器重新启动时,我不能看到问题,注意我没有启用默认文件,只有domain2.com和domain3.com,如果我启用默认其他域指向我的www目录,我还是不明白这个问题:
/etc/init.d/apache2 restart * Restarting web server apache2 [Wed Jul 06 13:16:24 2011] [warn] _default_ VirtualHost overlap on port 80, the first has precedence ... waiting [Wed Jul 06 13:16:26 2011] [warn] _default_ VirtualHost overlap on port 80, the first has precedence
这是我现在的configuration:
ports.conf:
Listen 80 Listen 443
/站点可用/默认:
<VirtualHost _default_:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None 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> </VirtualHost>
/Sites-available/domain2.com:
<VirtualHost *:80> ServerName domain2.com ServerAlias www.domain2.com ServerAdmin [email protected] DocumentRoot /var/www/domain2.com/ <Directory /var/www/domain2.com/> Order Deny,Allow Allow from all # Don't show indexes for directories Options -Indexes </Directory> </VirtualHost>
/Sites-available/domain3.com:
<VirtualHost *:80> ServerName domain3.com ServerAlias www.domain3.com ServerAdmin [email protected] DocumentRoot /var/www/domain3.com/ <Directory /var/www/domain3.com/> Order Deny,Allow Allow from all # Don't show indexes for directories Options -Indexes </Directory> </VirtualHost>
在你的/etc/apache2/ports.conf文件中,确保你有一个NameVirtualHost语句。 这告诉Apache它应该期望指定的IP地址或所有地址*和端口的虚拟主机。
NameVirtualHost *:80