仅在子域上允许index.php

时间:2015-01-15 19:22:08

标签: .htaccess mod-rewrite subdomain

我在域名上有一个网站。 和子域上的另一个网站(指向文件夹)。

我尝试访问子域名网站时出现此错误:强文禁止
您无权访问此服务器上的/index.php。


主网站的htaccess中,我看到此代码删除index.php以使网址清理:

#### remove index.php ##########################
    RewriteCond %{THE_REQUEST} !^POST
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)index\.php(.*)\ HTTP/ [NC]
    RewriteRule ^index\.php(.*)$ http:\/\/www.mainsite.com/$1 [R=301,L]


但是可以通过子域名来访问的网站上 使用子文件夹中的数据,
。 。 。
我似乎需要index.php(对吧?)

所以问题是: 如何仅为子文件夹/子域提供 index.php 请求?

1 个答案:

答案 0 :(得分:0)

您可以在规则中添加RewriteCond以仅定位一个特定域:

RewriteCond %{HTTP_HOST} ^(www\.)?mainsite\.com$ [NC]
RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)index\.php(.*)\ HTTP/ [NC]
RewriteRule ^index\.php(.*)$ http://www.mainsite.com/$1 [R=301,L]