【问题标题】:configure URL access control for domains using .htaccess or other methods使用 .htaccess 或其他方法为域配置 URL 访问控制
【发布时间】:2013-05-13 19:35:00
【问题描述】:

我的情况如下:

例如,我有一个网站http://www.MyWebSite.com,我设置了另一个子域http://image.MyWebSite.com。在 Apache 虚拟主机设置中,它们使用相同的文件夹(例如 /home/mywebsite/)。 (这两个域使用 mod_cband 具有不同的带宽设置)。

我有一个子文件夹“/home/mywebsite/files/images”,我想让它只能从子域“http://image.MyWebSite.com/files/images/...”访问,而不是“http://www.MyWebSite.com/files/images/”。 ..”

我应该如何使用 .htaccess 文件或任何其他等效方法进行配置?

谢谢大家

【问题讨论】:

    标签: apache .htaccess


    【解决方案1】:

    由于它们使用相同的目录,因此您可以这样做的唯一方法是通过专门用于主域的 RewriteRule。将其放入您网站根目录下名为 .htaccess 的文件中。

    Options +FollowSymLinks -MultiViews
    RewriteEngine on
    # If the request is for www.example.com ...
    RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
    # ... and the URL starts with files/images, deny access ([F] = Forbidden)
    RewriteRule ^files/images - [F]
    

    【讨论】:

    • 谢谢,如果我想把.htaccess放到“files/images”文件夹下,请问应该怎么配置?
    • .?替换^files/images——意思是“任何请求”
    • 非常感谢!还有一件事,如果我想让“www.example.com”和“example.com”都被拒绝,我该怎么做?
    • RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] 更改为RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]。这将匹配 example.com 和 www.example.com
    猜你喜欢
    • 1970-01-01
    • 2013-08-12
    • 1970-01-01
    • 1970-01-01
    • 2014-02-05
    • 2019-10-30
    • 2016-02-29
    • 2023-04-11
    • 1970-01-01
    相关资源
    最近更新 更多