0

基本上我有一个与现有站点和新站点共享的服务器。在我拥有的大多数共享主机帐户(linux)上,文件结构是这样的:

- public_html 
-- firstsite.com 
-- secondsite.com

对于有问题的服务器,结构更像这样:

- public_html 
-- all of the folders and files of the first site loose in this directory 
-- secondsite.com

因此,如果我尝试从浏览器访问 secondsite.com,则会被发送到此处: http://firstsite.com/secondsite.com

...这显然是不正确的。我的托管支持告诉我,如果我重命名 firstsite.com 使用的 htaccess 文件,secondsite.com 将解析为: http://secondsite.com

我显然不能禁用我的 htaccess 文件,因为这会破坏第一个站点。

所以我正在查看我的 htaccess 文件并认为这是有问题的行:

### Only allow access without the www. #### 
   RewriteCond %{HTTP_HOST} !^firstsite\.come$ [NC] 
   RewriteRule ^(.*)$ http://firstsite.com/$1 [R=301,L]

我在想我需要一套类似的规则secondsite.com吗?

任何建议都会很棒。

4

2 回答 2

0

首先,您RewriteRule将始终被执行,因为您的域名无效,RewriteCond并且它始终与该主机不同(您拥有 .come)。

其次,我认为您可以尝试将其添加为您的第一组规则.htaccess file

RewriteCond %{HTTP_HOST} ^secondsite\.com$ [NC] 
RewriteRule ^(.*)$ /secondsite.com/$1 [QSA,L]
于 2013-10-15T13:54:08.370 回答
0

你需要改变你的规则:

RewriteCond %{HTTP_HOST} !^firstsite\.come$ [NC] 
RewriteRule ^(.*)$ http://firstsite.com/$1 [R=301,L]

至:

RewriteCond %{HTTP_HOST} ^www\.firstsite\.com$ [NC] 
RewriteRule ^(.*)$ http://firstsite.com/$1 [R=301,L]

因此,当主机为 时secondsite.com,规则不会尝试重定向回第一个 site.com

于 2013-10-15T13:58:13.480 回答