0

我试图阻止我的网络服务器上的 apc.php 文件。如果执行以下操作,但我认为有更好的方法可以做到这一点,并将拒绝/允许规则放在一般位置 ~ .php$ 块下方。必须有两个带有 fastcgi 参数的块似乎不正确。

#Block to apc.php
location ~ /apc.php {

    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;

    allow 192.168.3.0/24;
    deny all;
}

# use fastcgi for all php files
location ~ \.php$
{
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}
4

1 回答 1

0

由于 if 语句中不允许“拒绝”,因此您可以使用嵌套位置location / { location /uri/ {} },但是,Nginx 手册中不鼓励这样做:

“虽然配置文件解析器允许嵌套位置,但不鼓励使用它们,并且可能会产生意想不到的结果。”

于 2013-07-25T04:50:24.930 回答