nginx,限制除 index.php 之外的所有 .php,允许 POST

nginx,限制除 index.php 之外的所有 .php,允许 POST

我正在尝试限制.php通过 HTTP 对文件的访问,只允许访问 index.php。

我应该只允许通过和访问.php文件。POSTrequire

我做了以下事情:

    location ~ ^((?!index\.php).)*$ {   
        allow 127.0.0.1
        deny all;
    }

这会阻止除 之外的所有文件index.php,但它也会阻止POST查询。

有任何想法吗?

答案1

位置适用于所有请求类型。不幸的是,我能想到的唯一方法是使用 IF

location ~ ^((?!index\.php).)*$ {   
  if ($request_method = GET ) {
    allow 127.0.0.1
      deny all;
  }
}

相关内容