デザイナーさんが苦戦しているEC-CUBEのカスタマイズの件で、事例が無いかなとソースの一部分(なんていう検索ワードかは記さない)をGoogleで検索してみたところ、tplファイルが丸見えになっているサイトが結構あることが判明した。

もちろんURL的にトップまで上がるとショップとして運営されているのが分かるけれど、ダイレクトに下層のURLを叩くとファイルがリスト表示される。Webサーバの設定ミスもあるだろう(IndexesがOnになっていると思われる)。

EC-CUBEの場合は、phpファイルが殆どなので直接phpファイルを覗くことは出来ないが、tplファイルや、logファイルなども丸見えでこりゃ設置に気をつけないといけないなと、過去に設置したサイトが気になって確認してみた。

とりあえず問題なかった。
EC-CUBEの設置には、dataフォルダと、htmlフォルダの2つのパーツが存在する。この設置方法に問題があると私は思う。

レンタルサーバだと、単純にユーザー公開ディレクトリが
/home/sasapurin/public_html/
なんて感じになっているので、
/home/sasapurin/public_html/html/
/home/sasapurin/public_html/data/
なんて設置してしまうと、dataフォルダの構造が丸見えになってしまう。

こういうケースも多い。
/home/sasapurin/public_html/eccube/html/
/home/sasapurin/public_html/eccube/data/

私はEC-CUBEだけの場合は意識してこういう風にしている。
/home/sasapurin/public_html/
/home/sasapurin/data/

TOPページをEC-CUBE以外にする場合はこんな感じ。dataフォルダは公開フォルダよりも一段階層を上げて設置する。
/home/sasapurin/public_html/index.html
/home/sasapurin/public_html/shop/
/home/sasapurin/data/

.htaccessにもこういう感じに記して、ディレクトリ内部のファイル一覧が表示されないように明示した方が良いと思う。
Options -Indexes

EC-CUBEは確かにWebサーバの構造を理解していない人が設置するとこういうミスをしかねない。しかしショップサイトのデザインのレベルが高かったりするので、素人の仕事ではないかも知れない。先日はセキュリティホールの修正で勧告が出たが、EC-CUBEは結構危ないかもなぁ。