知識の箱

主に気象を研究する上で得た知識と、WEBページ作成のために得た知識を記録しています。

pukiwiki(&php)でアップロードできる容量を増やす

pukiwikiでは、データを添付(アップロード)できる容量が制限されている。
下記の作業を行うことで、この制限を解除することができる。ここでは上限を50Mにするときの例を示す。

(1) pukiwiki側の設定

(i) (pukiwikiディレクトリ)/plugin/attach.inc.phpを書き換える。

書き換える場所は2箇所。

// max file size for upload on PHP(PHP default 2MB)
ini_set(“upload_max_filesize”,”2M”);
–>
// max file size for upload on PHP(PHP default 2MB)
ini_set(“upload_max_filesize”,”50M“);

// Max file size for upload on script of PukiWikiX_FILESIZE
define(‘PLUGIN_ATTACH_MAX_FILESIZE’, (1024 * 1024)); // default: 1MB
–>
// Max file size for upload on script of PukiWikiX_FILESIZE
define(‘PLUGIN_ATTACH_MAX_FILESIZE’, (51200 * 1024)); // default: 50MB

のように書き換える。

(ii) (pukiwikiディレクトリ)/plugin/dump.inc.php

// 最大アップロードサイズ
define(‘PLUGIN_DUMP_MAX_FILESIZE’, 1024); // Kbyte
–>
// 最大アップロードサイズ
define(‘PLUGIN_DUMP_MAX_FILESIZE’, 51200); // Kbyte

と書き換える。

これで、pukiwiki側の書き換えは終わり。

ただし、この変更だけだと、2Mまでのファイルしかアップロードすることができない。
2Mの制限を作っているのは、pukiwikiではなく、さーばーのphp本体。

なので、レンタルサーバーを使用してる場合は、レンタルサーバーの設定に依存する。

※2Mというのはデフォルトのphpの設定

もし個人でサーバーを管理してる場合あれば、下記の作業を行うことで、さらに上限を上げることができる。

2. サーバーのPHPの設定

/etc/php.iniのファイルを変更する。


※/etc/php.ini.defaultしかない場合は、php.ini.defaultをphp.iniとしてコピーした上で、php.iniを編集する。

改訂場所は下記の3箇所

memory_limit = 8M ; Maximum amount of memory a script may consume (8MB)
–>
memory_limit = 80M ; Maximum amount of memory a script may consume (80MB)

※PHPが使用できる最大メモリサイズのようですので、添付ファイルサイズよりも大きく設定

; Maximum allowed size for uploaded files.
upload_max_filesize = 2M
–>
; Maximum allowed size for uploaded files.
upload_max_filesize = 50M

; Maximum size of POST data that PHP will accept.
post_max_size = 8M
–>
; Maximum size of POST data that PHP will accept.
post_max_size = 80M

(3) 設定ファイルを保存して、apacheを再起動(もしくはパソコン自体を再起動)する。

/etc/init.d/apache2 restart (Linuxの場合)
apachectl restart (Macの場合)

なお、下記のページを参考にしました。

http://www.kharakawa.com/kh.log/archives/2005/08/pukiwiki.html