SSIで別ファイルをインクルード

IT関連キャッチアップ画像

(1)以下のような .htaccess をメモ帳等でつくり、サーバーのルート階層(index.htmlのある階層)にFTP等でアップする。

.htaccess
  1. Options +Includes -Indexes
  2. AddType text/html .html
  3. AddOutputFilter INCLUDES .html
  • レンタルサーバーが.htaccessによるSSIを許可している必要がある。
  • ルート階層に置くとそれより下位階層ならどこでもインクルードが使える。
  • 「-Indexes」の部分はファイルの一覧を表示しないようにするオプションなのでインクルードとは関係ない。

(2)インクルードされる側のファイルを作りサーバーにアップする。

hoge.inc
  1. <!-- インクルードされる側 -->
  2. <div>
  3.   <ul style="list-style-type: none;">
  4.     <li><a href="***">あいうえお</a></li>
  5.     <li><a href="***">かきくけこ</a></li>
  6.   </ul>    
  7. </div>

(3)インクルードする側のファイルを作りサーバーにアップする。

index.html
  1. <!doctype html>
  2. <html lang="ja">
  3. <body>
  4.   <div>
  5.     あいうえお
  6.   </div>
  7.   <!-- ここにインクルード -->
  8.   <!--#include virtual="hoge.inc" -->
  9. </body>
  10. </html>
  • #include virtual="〇〇〇" と #include file="〇〇〇" の2つの書き方がある。
  • #include file="〇〇〇"の書き方の場合は、自分より上の階層のファイルはインクルードできない。