通常のフォームは問題ないのに,ファイル・アップロードパーツを使ったフォームでだけ確認画面が「500 Internal Server Error」になる
通常のフォームの動作は問題ないのに,ファイル・アップロードパーツを使ったフォームでだけ確認画面が「500 Internal Server Error」 (インターナルサーバエラー、内部サーバエラー) になってしまうことがあります。
まずはサーバのエラーログを確認
500エラー発生時は,サーバのエラーログを確認して,発生時刻前後のログから原因を推測することからスタートしてください。
よくある要因
通常のフォームは問題ないのに,ファイルアップロードパーツを使ったフォームでだけ確認画面が500エラーになる場合は,
- (a)ファイルアップロード先ディレクトリのパーミッションが正しく設定されていない
- (b)ディスクの空き容量不足
などが原因として考えられます。
ケース(a): ファイルアップロード先ディレクトリのパーミッションが正しく設定されていない
添付ファイル保存先ディレクトリ(※)のパーミッションが 777 であることを確認し,そうでなかったら修正します。
※デフォルトの保存先は MTインストールDIR/plugins/AForm/data です。 プラグインの設定画面で,添付ファイル保存先を変更している場合は, そこで指定したディレクトリに対して設定を行います。
参考1: A-Formインストール方法 #4
https://www.ark-web.jp/movabletype/a-form/docs/install.html
参考2:ファイルアップロードパーツ使用の際の留意点
https://www.ark-web.jp/movabletype/a-form/docs/post_26.html
ケース(b): サーバのディスク容量不足
ケース(b)は,サーバ全体のディスク容量がひっ迫している状態が多いです。 こうなった時には,フォームのファイルアップロードで失敗するだけでなく,MTの記事投稿時にアイテムアップロードで失敗するなど,サイトの他の機能にも障害が出ている可能性があります。
不要なファイルを削除するか,ディスク容量を増やせる場合は追加するなどで空き容量をアップしてください。
特に, 作品応募フォームなど,大量のファイル添付が予想される場合 は,
- あらかじめ 添付ファイルの上限サイズを設けておく(A-Formの管理画面から可能です) ,
- サーバのディスク容量を増やしておく,
- こまめにローカルにダウンロードしてサーバ上からは削除する,
などの工夫が必要です。
- 対象バージョン
- すべてのバージョン
- 記事更新日
- 2015年8月12日
