目次
SSIとは
SSI (Server Side Includes) とは、HTML文書に特別な記法のコメントを挿入することによって、外部ファイルを読み込んだり、プログラムの実行結果を表示する機能のことです。拡張子が .shtml のファイルで動作します。
.htaccess ファイルを使用してSSIファイルの拡張子を .html などに変更すると、通常の HTMLファイルを表示する際のパフォーマンスが低下することがありますので、ご注意ください。
参照ファイルの制限
suEXECの制約により、SSIで参照する実行ファイルは絶対パスで指定することはできません。また、上位ディレクトリを参照することもできません。実行ファイルはSSIを記述するファイルと同じか下位のディレクトリに設置し、相対パスで指定してください。
動作しない例
# 絶対パスで参照している <!--#exec cmd="/home/username/public_html/foo.cgi"--> # 上位ディレクトリのファイルを参照している <!--#exec cmd="../foo.cgi"-->
動作する例
# 同じ階層のファイルを参照している <!--#exec cmd="./foo.cgi"--> # 下位ディレクトリのファイルを参照している <!--#exec cmd="./dir/foo.cgi"-->