WordPressを3.5.1から3.6.1にバージョンアップして、動画が直接アップロードできるようになった。これまでのようにYouTubeなどを経由する必要がなくなったのはすごい便利。だけどデフォルトではアップロードできるファイルサイズが2MBまでという制約がある。これは1件の記事あたりのトータル容量のようだ。最近のデジタルカメラで高画質撮影をすると4MB~5MBになってしまう。動画だともっと大きくなり、SD画質で2、3分にしても2MBを越えてしまう。2MB制限では実用にならない。
調べたところ、WordPressのファイル容量制限はWordPressのプログラムそのものではなく、php.iniで設定されていることがわかった。
CentOSの場合、php.iniは/etc/にある。root権限でないと書き換えできないので
sudo emacs /etc/php.ini
で開く。
ファイル容量に関係するのはこの中で
memory_limit
post_max_size
upload_max_filesize
の3項目。
これを3項目とも1000MB(1GB)に書き換えた。
つまり
memory_limit = 1000M
post_max_size = 1000M
upload_max_filesize = 1000M
またファイルサイズが大きくなることでアップロードにかかる時間が増え、途中でタイムアウトしてしまう可能性もある。そこで60秒の制限を300秒(5分)に拡張する
max_input_time = 300
php.iniを保存したらhttpdを再起動する
sudo init.d/httpd restart
WordPressの設定は一切いじる必要がない。ファイルアップロード画面を開けば最大アップロードファイルサイズが1GBになっている。これだけあれば写真も動画も心置きなくアップロードできる。