首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EC2 ubuntu上的多个虚拟主机-无法访问第二个主机,总是访问默认的

EC2 ubuntu上的多个虚拟主机-无法访问第二个主机,总是访问默认的
EN

Server Fault用户
提问于 2011-05-20 07:49:38
回答 3查看 2.3K关注 0票数 0

我已经搜索和重新配置了6天,并失去了几块头发。

问题:

我希望在我的ubuntu服务器(1个ip)上有2+虚拟主机,但是--只需要按字母顺序列出的第一个站点--支持的显示。000-违约

www.domain1.com

www.domain2.com

单独地,他们都工作(如果我a2dissite对每一个离开1)

配置:-Ubuntu10.10Server- EC2实例(不要为这个部分向我开枪-希望这不是问题!)-Apache2.2.16- DNS my.domain.com -对我的公共ec2 dns (这有效)

虚拟主机:# default

代码语言:javascript
复制
<VirtualHost *:80>
        DocumentRoot "/home/www/"
        <Directory />
        Options FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Satisfy all
        </Directory>
        <Directory /home/www>
        Options Indexes Multiviews FollowSymLinks
        AllowOverride all
        Order allow,deny
        Allow from all
        </Directory>
        LogLevel debug
        ErrorLog /home/www/logs/error.log
        CustomLog /home/www/logs/access.log "combined"
</VirtualHost>

虚拟主机1- domain1

代码语言:javascript
复制
<VirtualHost *:80>
        ServerAdmin webmaster@domain1.com
        ServerName domain1.com
        ServerAlias domain1.com www.domain1.com
        # Indexes + Directory Root.
        DirectoryIndex index.php
        DocumentRoot "/home/www/www.domain1.com/"
        # Directory directive
        <Directory "/home/www/www.domain1.com">
                Options Indexes Multiviews FollowSymLinks
                AllowOverride none
                Order allow,deny
                Allow from all
        </Directory>
        # CGI Directory
        ScriptAlias /cgi-bin/ /home/www/www.domain1.com/cgi-bin
        <Location /cgi-bin>
                Options +ExecCGI
        </Location>
        # Logfiles
        LogLevel debug
        ErrorLog "/home/www/www.domain1.com/logs/error.log"
        CustomLog "/home/www/www.domain1.com/logs/access.log" combined
</VirtualHost>

我在另一个具有不同域名的文档根目录中也有上面的domain2。

sym链接已经就位。apache2ctl -St显示了以下内容-

代码语言:javascript
复制
VirtualHost configuration:
*:80       is a NameVirtualHost
         default server  (/etc/apache2/sites-enabled/000-default:4)
         port 80 namevhost  (/etc/apache2/sites-enabled/000-default:4)
         port 80 namevhost domain1.com (/etc/apache2/sites-enabled/www.domain1.com:4)
         port 80 namevhost www.domain2.com (/etc/apache2/sites-enabled/www.domain2.com:4)
Syntax OK

我的ports.conf:

代码语言:javascript
复制
NameVirtualHost *:80
Listen 80

<IfModule mod_ssl.c>
    NameVirtualHost *.443
    Listen 443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>

从默认到我的apache2.conf和httpd.conf的更改都是空的。

我尝试了以下几种方法(以及其他大约100种):

  • http://ubuntu-tutorials.com/2008/01/09/setting-up-name-based-virtual-hosting/ -http://httpd.apache.org/docs/2.2/rewrite/vhosts.html"]http://httpd.apache.org/docs/2.2/rewrite/vhosts.html
  • http://ubuntuforums.org/archive/index.php/t-1466665.html"]http://ubuntuforums.org/archive/index.php/t-1466665.html
  • http://flurdy.com/docs/ec2/basics/index.html"]http://flurdy.com/docs/ec2/basics/index.html
  • http://www.webmasterworld.com/apache/3282118.htm"]http://www.webmasterworld.com/apache/3282118.htm

似乎我试过其他人都有问题的每件事,但似乎没有什么能解决我的问题。

可能性:

  1. EC2
  2. 文件的权限-我将所有内容更改为apache2用户"www-data“-没有骰子。
  3. 我是一个dope...lets,希望是这样,你们中的一位善良的人向我指出我的问题。:)
EN

回答 3

Server Fault用户

发布于 2013-12-14 07:39:01

说到虚拟主机,我们的一个项目也遇到了同样的问题。Apache的"ServerName“指令不是可选的,它是强制使用的。如果没有ServerName匹配,Apache就没有“默认”虚拟主机可加载的功能。如果虚拟主机服务器的名称重叠,那么这只会给你带来问题。最后,在这些情况下,Apache只是根据其配置文件加载顺序来决定该做什么。如果您试图通过一个未指定的地址(ip地址或未映射到虚拟主机上的内容)与服务器联系,它将加载他为该地址加载的第一个虚拟主机。正确的方法是让虚拟主机详细说明ServerName和ServerAlias指令中所有可能的服务器名。请参阅基于名称的apache虚拟主机,并仔细考虑有证据的注释“主主机消失”。

票数 1
EN

Server Fault用户

发布于 2011-05-20 09:30:48

您的ports.conf是否可能由于所使用的句点而不是冒号而失败?

代码语言:javascript
复制
<IfModule mod_ssl.c>
    NameVirtualHost *.443
    Listen 443
</IfModule>

注:**.443*应为**:443*。

票数 0
EN

Server Fault用户

发布于 2011-05-20 12:10:26

只是猜测。从apache2ctl -St的结果来看,您的输出是不同的:

代码语言:javascript
复制
port 80 namevhost domain1.com 
port 80 namevhost www.domain2.com

也许您还应该将domain2.com设置为ServerName (没有"www“前缀)

票数 -1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/271845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档