如何阻止用户查看位于主域文件夹中的站点?例如:主域是 www.maindomain.com。当我在 cPanel 中为另一个帐户创建子域时,它会创建文件夹,如果有人键入例如 www.maindomain.com/subdomain,它就可以访问。我想阻止某些文件夹,但保留其他文件夹,因为我在文件夹中有页面:wwwmaindomain/contact-us。我怎样才能做到这一点?希望它足够清楚:)
问问题
19058 次
3 回答
3
尝试在您的 .htaccess 中遵循 RewriteRule
RewriteEngine On
RewriteRule ^subdomain/(.*) /index.php [R=403,NC,L]
这将使用禁止的响应代码将任何 /subdomain 请求重定向到您的 index.php
于 2013-04-08T11:11:16.580 回答
2
在文档根目录的 htaccess 文件中添加这些规则(对于maindomain.com):
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?maindomain.com$ [NC]
RewriteRule ^(subdomain1|subdomain2|subdomain3) - [L,F]
如果您尝试从 maindomain.com 主机访问/subdomain1
、/subdomain2
或,这将返回“403 Forbidden”。/subdomain3
如果不想返回 403,也可以重定向:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?maindomain.com$ [NC]
RewriteRule ^(subdomain1|subdomain2|subdomain3) / [L,R=301]
这会将对子域的任何访问从 maindomain.com 主机重定向到文档根目录。
添加到子域文件夹中的 htaccess 文件顶部的规则:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?maindomain.com$ [NC]
RewriteRule ^ - [L,F]
或者
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?maindomain.com$ [NC]
RewriteRule ^ / [L,R=301]
于 2013-04-08T11:09:30.767 回答
0
非常有效的方法是在您不想显示的文件夹中放置一个空白 index.php 文件,这样就不需要弄乱 htaccess,或者您可以使用此代码创建一个新的 .htaccess
deny from all
将此保存为您不想显示给公共的特定文件夹的 .htaccess,但是我更喜欢第一个选项。
于 2013-04-08T11:19:44.990 回答