无法在php.ini中更改upload_max_filesize或post_max_size

Mat*_*ton 7 php nginx amazon-ec2 ec2-ami

请记住,我不是系统管理员,我只是一名开发人员.我找不到像我这样的确切问题的人,只是类似的,他们的"修复"似乎都没有用.

我目前正在运行Amazon EC2实例.

CentOS 6.2
Nginx 1.2.2
PHP 5.3.16 with APC
Percona 5.5.24 // not currently using this as I am using an RDS
Run Code Online (Sandbox Code Playgroud)

我已将php.ini(/etc/php.ini)设置设置为以下内容

upload_max_filesize=10M
post_max_filesize=20M
Run Code Online (Sandbox Code Playgroud)

重新加载配置后,使用php -ivia ssh,似乎加载了这些设置.显示upload_max_filesize=10M

使用phpinfo()或时ini_get,两个选项都返回为4M

phpinfo()表示我正在编辑的文件是load(/etc/php.ini).

我还运行php -i | grep "\.ini"检查加载了哪些文件,并且没有不必要的加载配置.我甚至单独检查了每个加载的文件以检查它们内部没有设置.

此外,我被建议尝试使用.user.ini配置文件.这也没有改变价值观.

ini_set() 也不起作用.

我有点失落.

编辑:不确定这会有所帮助,但我正在使用这个AMI http://megumi-cloud.com/

小智 12

文件名:

nginx/sites-available/default
Run Code Online (Sandbox Code Playgroud)

加:

location ~ \.php$ {
      fastcgi_param PHP_VALUE "upload_max_filesize = 50M \n post_max_size=51M";
}
Run Code Online (Sandbox Code Playgroud)

运行:从命令行: sudo service nginx restart


小智 5

尝试做这样的命令:

php --ini
Run Code Online (Sandbox Code Playgroud)

它将显示php加载哪些ini文件.

示例输出:

[admin@staging ~]$ php --ini
Configuration File (php.ini) Path: /usr/local/etc
Loaded Configuration File:         /usr/local/etc/php.ini
Scan for additional .ini files in: /usr/local/etc/php
Additional .ini files parsed:      /usr/local/etc/php/extensions.ini
Run Code Online (Sandbox Code Playgroud)


Mat*_*ton 3

我与制作 AMI 的人取得了联系,发现还有其他配置文件覆盖了php.ini

有 2 个文件保存设置

/etc/php-fpm.d/www.conf // This is the file which holds upload_max_filesize and post_max_size, among others
/etc/php-fpm.conf
Run Code Online (Sandbox Code Playgroud)

显然,不同配置的位置可能有所不同,但希望这将有助于让人们了解还需要寻找什么。

  • 我遇到了同样的问题,并通过增加“upload_max_filesize = 10M”来编辑“/etc/php5/fpm/php.ini”文件。然后我必须“sudo service php5-fpm restart”和“sudo service nginx restart”才能最终工作(尽管这是在 Ubuntu 12.04 上)。 (7认同)
  • 执行“sudo service php5-fpm restart”和“sudo service nginx restart”对我有用,而“sudo /etc/init.d/php5-fpm restart”和“sudo /etc/init.d/nginx restart”则不起作用! (2认同)