1

我知道,这不是与编程问题直接相关的问题,但我理解它与程序员常用的规则软件工具相匹配,因为我的开发环境依赖于这个工作软件。我在 Nginx 论坛的 Nginx Wiki 中找不到任何有用的信息,所以我希望在这个专业的平台上找到答案。由于这里还有许多其他与 Nginx 相关的问题,我想,这可能不是一个离题的问题。我来自 Apache 背景,正在尝试将我的服务器迁移到 Nginx。在我网站的配置文件中,我定义了一些 fastcgi 值来覆盖 php.ini 文件,我想保持不变,如下所示:

fastcgi_param PHP_VALUE "post_max_size = 15M";
fastcgi_param PHP_VALUE "upload_max_filesize = 5M";

还有几个。现在我想知道,我怎样才能从我的 PHP 脚本中得到它们。与 Apache 一样,使用 ini_get() 不起作用,或者返回 php.ini 默认值。我在 Nginx 文档和网络上搜索了答案,但找不到答案。

有人会告诉我,如何实现这一点,好吗?

4

1 回答 1

3

要在 nginx 上声明多个 php_value,您应该将这些值组合在一个fastcgi_param PHP_VALUE指令中,如下所示。否则,只有最后一个被传递给 php-fpm 进程。

location ~ \.php$ {
    [...]
    fastcgi_param PHP_VALUE "
        post_max_size=15M
        upload_max_filesize=5M
        ";
    [...]
}

我相信这就是为什么你会看到默认值或在 php.ini 中设置的值,如果你尝试过的话ini_get("post_max_size")

于 2013-03-02T16:14:00.293 回答