我有一个奇怪的情况,使用.htaccess配置。 我有一个多域主机,每个域有一个目录。 例如,我有:.htaccess当没有结尾斜杠时,RewriteRule会使地址栏url更改
http://www.domain1.com
http://www.domain2.com
及以下的目录结构:
/domain1/
/domain1/index.php
/domain2/
/domain2/index.php
/domain2/subdirectory/
/domain2/subdirectory/index.php
和.htaccess
文件,内容如下:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?domain1\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/domain1/.*$
RewriteRule ^(.*)$ domain1/$1 [L]
RewriteCond %{HTTP_HOST} ^(www\.)?domain2\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/domain2/.*$
RewriteRule ^(.*)$ domain2/$1 [L]
所有的作品,因为我有一个喜欢例外: 如果我这样做:
http://www.domain2.com/subdirectory/
(与在最后一个斜杠) 内容propertly显示和地址栏上的网址保持不变,但 如果我这样做:
http://www.domain2.com/subdirectory
(结尾没有斜杠) 内容正确显示,但地址栏上的网址变更为:
http://www.domain2.com/domain2/subdirectory/
(注意子目录名和斜杠结尾处附加) ,我不喜欢的用户看到这种变化地址这是我的问题
乔恩嗨以上,非常感谢你,你的解决方案完美地工作。在开始时我认为它不起作用,但我需要清除浏览器缓存,之后一切都很好 – Angel