允许 php 值仅在子目录中起作用
Allow php value to only work in a subdirectory
在我的 php.ini 中,我禁用了 allow_url_fopen。我想为我的 /example 目录启用它,如下所示,但它不起作用。但是,如果我将指令从 /example 移动到它上面的 ~.php$ 位置,那么它就可以正常工作。我在想 /example 位置块从未被处理过。任何想法如何允许 url fopen 只在 /example 目录中工作?
server {
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
}
location /example {
fastcgi_param PHP_ADMIN_VALUE "allow_url_fopen=1";
}
}
nginx
选择一个 location
来处理请求。有关详细信息,请参阅 this document。
正则表达式 location
块优先于常规 prefix location
块,因此任何 URI 结尾with .php
将由您的 location ~\.php$
块处理,无论它是否以 /example
开头。有关详细信息,请参阅 this document。
如果您想创建一个 location
来发送额外的 fastcgi 参数,您将需要包含所有必需的 fastcgi 指令。
例如:
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
}
location ^~ /example {
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param PHP_ADMIN_VALUE "allow_url_fopen=1";
}
}
在我的 php.ini 中,我禁用了 allow_url_fopen。我想为我的 /example 目录启用它,如下所示,但它不起作用。但是,如果我将指令从 /example 移动到它上面的 ~.php$ 位置,那么它就可以正常工作。我在想 /example 位置块从未被处理过。任何想法如何允许 url fopen 只在 /example 目录中工作?
server {
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
}
location /example {
fastcgi_param PHP_ADMIN_VALUE "allow_url_fopen=1";
}
}
nginx
选择一个 location
来处理请求。有关详细信息,请参阅 this document。
正则表达式 location
块优先于常规 prefix location
块,因此任何 URI 结尾with .php
将由您的 location ~\.php$
块处理,无论它是否以 /example
开头。有关详细信息,请参阅 this document。
如果您想创建一个 location
来发送额外的 fastcgi 参数,您将需要包含所有必需的 fastcgi 指令。
例如:
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
}
location ^~ /example {
location ~\.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param PHP_ADMIN_VALUE "allow_url_fopen=1";
}
}