我尝试让用户停留在 URL www.mydomain.de 上,但是 Apache 使用 301 永久重定向到 mydomain.de。我该如何防止这种情况发生?
vhost 的 httpd.include
<VirtualHost xx.xx.xx.xx:80>
ServerName mydomain.de:80
ServerAlias www.mydomain.de
UseCanonicalName off
SuexecUserGroup mydomain psacln
ServerAdmin "[email protected]"
DocumentRoot /var/www/vhosts/mydomain.de/httpdocs
</VirtualHost>
DNS 设置
; *** This file is automatically generated by Plesk ***
$TTL 86400
@ IN SOA ns.mydomain.de. info.mydomain.de. (
1246541440 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
360 ) ; Minimum
mydomain.de. IN NS ns.mydomain.de.
mydomain.de. IN NS ns2.hans.hosteurope.de.
ns.mydomain.de. IN A 92.51.134.24
mydomain.de. IN A 92.51.134.24
webmail.mydomain.de. IN A 92.51.134.24
mail.mydomain.de. IN A 92.51.134.24
science.mydomain.de. IN A 92.51.134.24
test.mydomain.de. IN A 92.51.134.24
testing.mydomain.de. IN A 92.51.134.24
ftp.mydomain.de. IN CNAME mydomain.de.
www.mydomain.de. IN CNAME mydomain.de.
*.webmail.mydomain.de. IN CNAME mydomain.de.
mydomain.de. IN MX 10 mail.mydomain.de.
mydomain.de. IN TXT "v=spf1 +a +mx -all"
有什么想法,为什么会发生这种情况?谢谢!
编辑:感谢 Chaos 提供的意见(尚无法对您的答案进行投票),但不幸的是,它仍然不起作用。
Fiddler2 输出
GET / HTTP/1.1
Accept: */*
Accept-Language: de
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.5.21022; .NET CLR 3.5.30729; .NET CLR 4.0.20506; InfoPath.2; .NET CLR 3.0.30729)
Host: www.mydomain.de
Proxy-Connection: Keep-Alive
HTTP/1.0 301 Moved Permanently
Date: Thu, 02 Jul 2009 18:38:34 GMT
Server: Apache/2.2.8 (Ubuntu) DAV/2 SVN/1.5.1 mod_ssl/2.2.8 OpenSSL/0.9.8g mod_python/3.3.1 Python/2.5.2 PHP/5.2.10 mod_perl/2.0.3 Perl/v5.8.8
X-Powered-By: PHP/5.2.10
X-Pingback: http://mydomain.de/xmlrpc.php
Location: http://mydomain.de/
Content-Length: 0
Content-Type: text/html; charset=UTF-8
X-Cache: MISS from dezntpx01.computacenter.de
X-Cache-Lookup: MISS from dezntpx01.computacenter.de:8081
X-Cache: MISS from dezntpx03.computacenter.de
X-Cache-Lookup: MISS from dezntpx03.computacenter.de:8081
Via: 1.0 dezntpx01.computacenter.de:8081 (squid/2.7.STABLE5), 1.0 dezntpx03.computacenter.de:8081 (squid/2.7.STABLE5)
Connection: keep-alive
Proxy-Connection: keep-alive
答案1
嗯,首先是这样的:
ServerName mydomain.de:80
ServerAlias www.mydomain.de
需要是这样的:
ServerName www.mydomain.de
ServerAlias mydomain.de
UseCanonicalName
可能也应该打开。如果你想让他们继续使用一个版本的网站,那么这对你有好处,而不是坏处。
编辑:好的,问题是您的 Apache 服务器甚至无法控制您看到的行为;您正在与之交谈的代理可以控制。它决定抛出 301 重定向的原因尚不清楚,但可能是因为它www.mydomain.de
是一条CNAME
记录。我会尝试将其设为一条A
记录。
代理可能还需要花费任意时间才能注意到您正在执行的操作并调整其行为。据我所知,它也可能实际配置了规则,告诉它www
从您的域中删除。