我在重定向到受保护文件夹时遇到问题。有两个域:domain1.com 和 domain2.com 托管在两个不同的服务器中。两者都设置了将 www 添加到地址的 .htaccess 规则:
RewriteCond %{HTTP_HOST} ^domain1\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain1.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^domain2\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain2.com/$1 [R=301,L]
并且两者都有一个受保护的文件夹 /admin 。
当我想以这种方式访问此文件夹时没有问题:
- http://www.domain1.com/admin
- http://www.domain2.com/admin
但是当我尝试使用这些地址访问它们时:
- http://domain1.com/admin
- http://domain2.com/admin
只有 domain1.com 正常工作,要求输入密码, domain2.com 返回 401 ERROR
--------------
--------------
root@vps:~# telnet domain1.com 80
Trying 1.1.1.1...
Connected to domain1.com.
Escape character is '^]'.
HEAD /admin HTTP/1.1
Host: domain1.com
HTTP/1.1 401 Authorization Required
Date: Fri, 29 Jun 2012 18:54:34 GMT
Content-Type: text/html
Connection: keep-alive
WWW-Authenticate: Basic realm="admin"
Accept-Ranges: bytes
Vary: Accept-Encoding
Server: Apache/2
Connection closed by foreign host.
--------------
--------------
root@vps:~# telnet domain2.com 80
Trying 2.2.2.2...
Connected to domain2.com.
Escape character is '^]'.
HEAD /admin HTTP/1.1
Host: domain2.com
HTTP/1.1 301 Moved Permanently
Date: Fri, 29 Jun 2012 18:52:19 GMT
Server: Apache/2
WWW-Authenticate: Basic realm="Panel Administracyjny"
Location: http://www.domain2.com/401.shtml
Vary: Accept-Encoding
Content-Type: text/html; charset=iso-8859-1
Connection closed by foreign host.
--------------
--------------
有什么问题怎么解决?如果 domain2.com 的情况,是否有可能错过 Connection: keep-alive 的一行?domain2.com 的管理员说:不可能将这种重定向到受保护的文件夹 - 但你知道 -.- 正如你在 domain1.com 看到的那样 - 所以我必须在告诉他应该修复什么之前确定.