【问题标题】:VirtualHost apache always returns same website not subdomainVirtualHost apache总是返回相同的网站而不是子域
【发布时间】:2016-11-06 11:40:39
【问题描述】:

我正在使用 apache 2.2.15,在 CentOS 6 上的虚拟机中,我有一个 symfony 项目在这里工作,我的老板想在子域的同一服务器上加载一个 wordpress 网站。 子域不工作,我尝试了很多配置,这是最后一个使用的:

mysite.cl.conf(在 /etc/httpd/conf.d 文件夹中)

NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot /var/www/html/symfonyProyect/web
    ServerName mysite.cl
    ServerAlias mysite.cl

    ErrorLog /var/log/httpd/symfonyProyect_error.log
    CustomLog /var/log/httpd/symfonyProyect_access.log combined

    <Location />
        <IfModule mod_rewrite.c>
            RewriteEngine On
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteCond %{REQUEST_FILENAME} !-d
            RewriteRule . /app.php [L]
        </IfModule>
        DirectoryIndex app.php
    </Location>

</VirtualHost>


<VirtualHost *:80>
    ServerName mysubdomain.mysite.cl

    DocumentRoot /var/www/html/mysubdomain

    <Directory /var/www/html/mysubdomain>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ErrorLog /var/log/httpd/mysubdomain_error.log
    CustomLog /var/log/httpd/mysubdomain_access.log combined
</VirtualHost>

我的主机文件(在 /etc 文件夹中)

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
myip  mysite.cl mysubdomain.mysite.cl

还有我的 hosts.conf

multi on

当我尝试 mysite.cl 时,它会显示 symfony 网站,但是当我尝试 mysubdomain.mysite.cl 时,它会给我“This site can't be reached”或“ERR_NAME_NOT_RESOLVED”。

如果我删除第一个 VirtualHost 块,它会显示 wordpress 网站(即使使用ServerName mysubdomain.mysite.cl)。 我错过了一些配置还是什么?

【问题讨论】:

    标签: symfony subdomain virtualhost centos6 apache2.2


    【解决方案1】:

    您得到的错误是 DNS 不是来自 Apache。您需要在尝试浏览到 mysubdomain.mysite.cl 的同一台机器上修改主机文件。

    在您运行浏览器的机器上打开命令提示符/shell,然后运行ping mysubdomain.mysite.cl,如果它可以正常工作,您的浏览也应该可以正常工作。如果您收到类似ping: unknown host mysubdomain.mysite.cl (Linux) 或Ping request could not find host mysubdomain.mysite.cl (Windows) 的消息。然后只需编辑该系统上的主机文件或将 DNS 条目添加到您的名称服务器。

    在运行 Apache 的服务器上简单地编辑 /etc/hosts 不会导致所有其他主机能够将主机名解析为 IP 地址。

    【讨论】:

    • 如你所说,这不是 Apache 的问题,系统不允许在 a 记录中使用通配符
    猜你喜欢
    • 2017-01-14
    • 2011-03-25
    • 1970-01-01
    • 2021-06-18
    • 2014-10-06
    • 1970-01-01
    • 2019-10-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多