2016/04/28
ECCUBE2.13 ECCUBE2.11~
サーバーの仕様によりますが、一部サーバでは、デザイン管理で新規ページを作成後、アクセスするとInternal Server Errorになります。
原因は、user_dataに作成されたphpのパーミッションが「666」になっているためです。
パーミッションを「644」に変更すれば問題なく表示されますが、
ユーザー側にいちいち変更してもらうことはほぼ不可能と思われます。
そこで、ファイル修正で対応をすることにしました。
参考サイト
ECCUBEの新規追加ページがInternal Server Error・Not Foundに
修正するファイルは
/data/class/helper/SC_Helper_FileManager.php
です。
public function sfWriteFile($filename, $value) { if (!is_dir(dirname($filename))) { SC_Utils_Ex::recursiveMkdir(dirname($filename), 0777); } $fp = fopen($filename, 'w'); if ($fp === false) { return false; } if (fwrite($fp, $value) === false) { return false; } //追加 if ( ( pathinfo ( $filename, PATHINFO_EXTENSION) ) == "php" ) { chmod($filename, 0644); } return fclose($fp);; }
15~17行目のif ( ( pathinfo~~を追加することにより、新規作成でパーミッションが644になるようにしています。
最近はセキュリティ強化のため、このような仕様のサーバも増えているようです。
ちょっと面倒ですが、上記のように対応すると問題ないようです。
ゼヒトモ内でのプロフィール: ROCKSTREAM, ゼヒトモのホームページ作成・制作サービス, 仕事をお願いしたい依頼者と様々な「プロ」をつなぐサービス
2024/08/20
神社
御朱印
2024/07/06
神社
御朱印
2024/07/06
神社
御朱印
2024/02/09
神社
2024/02/09
神社