nginx.conf 中的 PHP_VALUE 不会覆盖 php.ini 中的参数

vye*_*nkv 3 php config fastcgi nginx php-ini

我在 nginx.conf 中有这个位置部分:

location ~ \.php {
            try_files $uri =404;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param   PHP_VALUE   "memory_limit = 500M; post_max_size = 400M; upload_max_filesize = 300M";
            fastcgi_param SCRIPT_NAME $fastcgi_script_name;
            fastcgi_index index.php;
            fastcgi_pass 127.0.0.1:9000;
}
Run Code Online (Sandbox Code Playgroud)

我需要增加这些参数以进行文件下载,但phpinfo()尽管更新了 $_SERVER['PHP_VALUE'] (包含我在配置中写入的值),但 -list 中仍然存在 php.ini 的先前值。我尝试以不同的方式更改值:不使用分号,使用\n,混合之前的两种变体,替换PHP_VALUEPHP_ADMIN_VALUE,从其他人的配置中复制参数;但仍然不成功。问题出在哪里?什么阻碍了我的参数的应用?

小智 6

对我来说,它以这种格式工作 -

fastcgi_param PHP_VALUE "variable1=value1;\n variable2=value2; \n variable3=value3;";
Run Code Online (Sandbox Code Playgroud)