【问题标题】:How I can restrict access to files with htaccess from all IPs except one?如何限制使用 htaccess 从除一个以外的所有 IP 访问文件?
【发布时间】:2014-01-19 07:55:01
【问题描述】:

如何限制使用 htaccess 从除一个以外的所有 IP 访问文件? 我想限制所有 IP 对 php 文件的访问,需要一个 IP 我的意思是我想允许 192.168.1.200 看到 php 文件和其他 IP 限制看到 php 文件 并且其他 IP 也应该访问以查看其他文件类型,例如图像

【问题讨论】:

    标签: .htaccess


    【解决方案1】:

    将此代码放入您的DOCUMENT_ROOT/.htaccess 文件中:

    RewriteEngine On
    
    # If IP is not 192.168.1.200
    RewriteCond %{REMOTE_ADDR} !^192\.168\.1\.200$
    # block access to all .php files
    RewriteRule \.php$ - [F,NC]
    

    【讨论】:

    • 你好@anubhava,开头的反斜杠是什么意思?
    • 如果你的意思是\.php,那么它是一个正则表达式,其中点需要被转义以避免匹配任何字符。
    • 啊,我的错!谢谢@anubhava!
    【解决方案2】:

    试试这个:

    <FilesMatch "\.(php)$">
        Order allow,deny
        Deny from all
        Allow from 192.168.1.200
    </Files>
    

    它匹配所有的 php 文件并且只允许指定的 ip。您应该考虑添加一个 403 错误处理程序

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-25
      • 1970-01-01
      • 2011-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多