在 heroku 上编辑 php.ini


Edit php.ini on heroku

我已经在Heroku上放了wordpress,并且有一个2.5MB的自定义主题需要上传。

我已经安装了 wpro 插件以将我的上传直接发送到 s3,但是,我仍然收到错误。我想我仍然需要编辑 php.ini 文件,特别是这些行:

; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 2M

我需要将其更改为 3M。

如何编辑 php.ini 文件?

更改 Heroku php.ini设置的最简单解决方案是创建一个 .user.ini .

Heroku 开发人员中心语言支持> PHP>自定义 PHP 的 Web 服务器和运行时设置> PHP 运行时设置中对此进行了说明:

PHP-FPM 将从与通过 Web 服务器提供的.php文件位于同一目录中的任何.user.ini文件中读取设置;如果未找到任何设置,它还将从任何父目录中的.user.ini文件中读取设置,直到应用程序配置的文档根目录。

例如,要在Symfony或Laravel项目中将上传文件的最大允许大小增加到10 MB,则应在/public中创建.user.ini文件,并应包含以下行:

post_max_size = 10M
upload_max_filesize = 10M

我通过让wordpress-heroku读取自定义php.ini来解决这个问题。

我将 heroku 构建包的 php.ini 复制到我的根目录中https://github.com/heroku/heroku-buildpack-php/blob/master/conf/php/php.ini

我将其重命名为 custom_php.ini 并更改了以下行

upload_max_filesize = 3M
post_max_size = 3M

然后我添加了一个带有该行的 Procfile

web: vendor/bin/heroku-php-apache2 -i custom_php.ini .

Heroku 只是非正式地支持 php。我联系支持人员,他们不会为我改变这一点。最终,我认为这比它的价值更麻烦,因为 Heroku 并不打算成为一个文件写入系统 - 除非更改是在本地系统上进行的并以 git 提交,否则您更改的任何内容都将被撤消。即使您设置了 WPRO 并将所有静态数据发送到 Amazon s3,也会遇到麻烦。

对我来说,在Amazon E2上设置Wordpress要容易得多。