Article ID: 3376, created on May 2, 2013, last review on Aug 25, 2014

  • Applies to:
  • Plesk for Linux/Unix

症状

Horde の最大添付サイズを変更するには

解決策

PHP はデフォルトで、アップロードするファイルのサイズを 2 MB に制限しています。 この制限は、ウェブメールを含むすべての PHP アプリケーションに適用されます。 Plesk サーバの /etc/php.ini ファイルで以下のオプションを編集し、必要に応じて値を設定します。 例えば以下の通りです。

upload_max_filesize = 32M
post_max_size = 32M

php.ini ファイルの変更後に、Apache を再起動します。

また、添付ファイルの最大サイズは、Horde 構成を調整することによって変更することもできます。 /etc/psa-horde/imp/conf.phpattach_size_limit オプションを探します。

$conf['compose']['attach_size_limit'] = '0';

attach_size_limit の値がゼロの場合、「無制限」を意味します。

注記memory_limit の値は post_max_size より大きくなければなりません。 PHP パラメータ post_max_size の値を上げるときは、memory_limit パラメータの値も忘れずに上げてください。

コア php.ini ディレクティブに関する説明」より:

"post_max_size" integer は POST データに許可される最大サイズを設定します。 この設定は、ファイルアップロードにも影響します。 大きなファイルをアップロードするには、この値を "upload_max_filesize" より大きく設定する必要があります。 configure スクリプトでメモリ制限を有効とした場合、"memory_limit" もファイルアップロードに影響します。 一般的に "memory_limit" は、"post_max_size" よりも大きくする必要があります。 integer を使用する際、その値はバイト単位で測られます。

この FAQ に記載された短縮表記を使用することも可能です。 POST データの大きさが、"post_max_size" より大きい場合、"$_POST" と "$_FILES" superglobals は空になります。 この事象は、いくつかの方法で検出することができます。例えば、"$_GET" 変数をデータを <form action="edit.php?processed=1"> のように 処理するスクリプトに渡し、$_GET['processed'] が設定されているかどうかを確認する方法があります。

注記: PHP では、ビット値を表すショートカット K(kilo)、M(mega)および G(giga)を使用することができます。 これらを使用した場合、PHP が規約にしたがって自動的に値を判断します。 32 ビット符号付き整数の最大値を上回る値を指定しないように注意しましょう(32 ビットシステムを使用している場合)。そのようなことをすると、スクリプトの実行が失敗します。

a914db3fdc7a53ddcfd1b2db8f5a1b9c 56797cefb1efc9130f7c48a7d1db0f0c 29d1e90fd304f01e6420fbe60f66f838

Email subscription for changes to this article