仅在子域上允许 index.php

allow index.php only on subdomain

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

我在尝试访问子域上的网站时遇到此错误:
strong text 禁止
您无权访问此服务器上的 /index.php。


main-website 的 htaccess 中,我看到此代码删除 index.php 以使 url 干净:

#### 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/ [R=301,L]


但是在可以通过 subdomain
访问的网站上 数据位于 子文件夹
. . .
我似乎需要 index.php(对吗?)

所以问题是: 我如何允许 index.php 请求只针对 子文件夹/子域?

您可以在规则中添加 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/ [R=301,L]