【问题标题】:Subdomains Always Redirect To Main Domain - Apache2 VirtualHosts & Debain子域总是重定向到主域 - Apache2 虚拟主机和 Debian
【发布时间】:2014-08-21 09:24:47
【问题描述】:

我想使用 apache2 VirtualHosts 建立一个主站点和一个用于开发的子域。这是我的 site.conf 虚拟主机文件的样子:

<VirtualHost *:80>
        ServerName dev.mysite.com

        DocumentRoot /var/www/site/subdomain
        <Directory /var/www/site/subdomain >
                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>

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel debug

        CustomLog ${APACHE_LOG_DIR}/sub.log combined
</VirtualHost>

<VirtualHost *:80>
        ServerName www.mysite.com
        ServerAlias mysite.com

        DocumentRoot /var/www/site/main
        <Directory /var/www/site/main >
                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>

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

问题是,每次我访问 dev.mysite.com 时,我都会得到 mysite.com。

主站点没有 htaccess,子域的 .htaccess 如下所示:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

我已经尝试了我能找到的所有其他解决方案(使用文字 IP、重新排序、使用端口而不是命名主机)......我现在完全陷入困境。该网站当然是启用的。有人有什么想法吗?

【问题讨论】:

    标签: apache .htaccess apache2 subdomain virtualhost


    【解决方案1】:

    Wordpress 是个问题

    或者更确切地说,我不知道我必须将 Wordpress 站点 url 配置为子域,否则它只会重定向到给定的域...

    因此解决方案:打开wp_options 表并编辑site_url 以包含子域。

    【讨论】:

    • 这对我帮助很大,我已经研究了几个小时的 apache 和 debian 设置。
    猜你喜欢
    • 1970-01-01
    • 2016-08-13
    • 1970-01-01
    • 2020-07-16
    • 2011-12-24
    • 2011-08-23
    • 1970-01-01
    • 2016-12-29
    • 2013-12-14
    相关资源
    最近更新 更多