如何防止从root网站访问网站

时间:2017-01-02 19:37:11

标签: php apache .htaccess

我在GoDaddy上托管了多个网站。我在根文件夹(/)中有一个网站,在根目录下有不同文件夹的其他网站。

  • www.mydomain.com位于/
  • 文件夹www.something.com 中的
  • /something

如果用户输入网址www.mydomain.com/something,则会显示网站www.something.com的内容。

如果用户在www.mydomain.com之后键入任何子目录名称,我希望将用户重定向到www.mydomain.com

我在根文件夹的.htaccess文件中有以下内容:

RewriteEngine On
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]

2 个答案:

答案 0 :(得分:1)

这会将子目录中的任何内容重定向到root,以便在根.htaccess文件中使用。

# Redirect anything in a sub-directory to root
# (any URL with a slash in it, not including the first one)
RewriteRule / / [R=301,L]

请记住,所有样式表,图片,javascript等都不能存在于子目录中,因为它们不会工作(它们也会被重定向到root)。使用这种方法,网站的所有内容都必须是根的。

答案 1 :(得分:1)

您可以在站点根目录中使用此规则.htaccess:

RewriteEngine On

# redirect to / of something or somethingelse is accessed from mydomain.com
RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.com$ [NC]
RewriteRule ^(something|somethingelse)/ / [L,R=301,NC]

RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]