【问题标题】:deny direct access to all .php files from domains other than our own拒绝从我们自己的域以外的域直接访问所有 .php 文件
【发布时间】:2012-11-22 12:40:59
【问题描述】:

我正在尝试使用 htaccess 拒绝从我们的域以外的任何域直接访问所有 .php 文件。所以我在下面的规则中添加了 php。但这是正确的方法吗?或者有没有其他“正确的方法来做到这一点”

#No Hotlinking
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://mydomain\.com/.*$ [NC]
RewriteRule \.(gif|jpe?g|png|js|css|php)$ - [F]

所以:

http://www.mydomain.com/page.php -> OK. Display the page.
http://www.evildomain.com/page.php -> Deny!

【问题讨论】:

    标签: apache .htaccess


    【解决方案1】:

    这对我来说似乎很好,除非您宁愿使用 $_SERVER['HTTP_REFERER'] 直接检查您的 PHP 页面:

    <?php
    if ($_SERVER['HTTP_REFERER'] != 'mydomain.com') {
    header("Location: goaway.php");
    }
    

    【讨论】:

    • 我不想在每个页面上都使用它。所以我用 htaccess 来做。
    • 是的,这很好,所以要回答你的问题,我认为你的原始解决方案是最好的。
    猜你喜欢
    • 2010-11-23
    • 1970-01-01
    • 2012-03-23
    • 2012-10-26
    • 1970-01-01
    • 1970-01-01
    • 2014-08-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多