nginx+FastCGI+PHPでWordPressを動かしていて一定サイズ以上のファイルがアップロードできない件

検索しても出てこなかったけど何とか無事解決したので記録。

■環境について

Ubuntu 14.04 LTS
nginx+FastCGI+PHPでWordPressを動かしてます。
WordPressの「メディアを追加」で画像をアップロードしようとしても
httpエラーが出てしまい画像がアップロードできない。

検索した結果から考えられる問題については下記があったがいずれも原因ではなかった。

  • php.ini / .htaccessの設定 ... 充分な大きさだった
  • 該当フォルダの書き込み権限 ... nginxのユーザ権限
  • サーバのディスクの空き容量 ... 充分な空きがあった
  • WordPressのファイルアップロードサイズ ... 該当の設定が見つからない
  • WordPressの中に壊れたファイルがある ... 見つからなかった

■原因:nginxのパラメータ

nginxではPOSTのサイズが1MBに制限されているそうです。だから写真とかはダメなのです。

$ sudo vi /etc/nginx/sites-avairable/default

さくっと設定ファイルを書き換え

server{
    #  :: 省略
    server_name www.example.com;
    client_max_body_size 10M;
    #  :: 省略

書き換え終わったらリロード。

$ sudo service nginx reload

自分は、これでアップロードできるようになりました。