【Apache】Apache2.0でSSIを使用するための設定方法

JSP(Java)やPHPを使っていると、ページのヘッダやフッタを共通化するのって簡単ですが、純粋なHTMLファイルだけで構成されたページでヘッダやフッタを共通化する方法は限られてきます。

[スポンサーリンク]

純粋なHTMLファイルだけの場合であれば、SSIを使うことが一般的かなと考えます。

SSIは、HTML側のコード自体は簡単です。
SSIを使うには、Apache側の設定をする必要があります。
今回は、Apache2.0系のSSI設定方法を紹介します。

この章でやること

SSIを使うため、Apache.htaccessを修正する方法を紹介します。

Apacheの設定ファイルへ設定を追加する。

まずは、Apacheの設定ファイルを開きましょう。
以下のviは例です。

vi /etc/httpd/conf/httpd.conf

httpd.confへOptions Includesを追加します。
AddTypeとAddOutputFilterを追加します。
以下の例だと、htmlファイルとshtmlファイルがSSI対象となります。

#    Options Indexes FollowSymLinks
Options Includes
AddType text/html .shtml .html
AddOutputFilter INCLUDES .shtml .html

.htaccessへ設定を追加する。

.htaccessファイルが無い場合は作りましょう。
SSIを使うHTMLファイルと同じ階層に.htaccessファイルを設置します。
.htaccess内に以下を追加します。

Options +Includes
AddType text/html html
AddHandler server-parsed html

SSIを使ってみる。

ここまでで、SSIを使うための準備が終わりました。
さっそく使ってみましょう。
9行目がSSIを使った部分です。
共通のナビゲーション等を指定しましょう。

<!DOCTYPE html>
<html lang="ja">
  <head>
    <title>test</title>
  </head>

  <body>
      <!--  SSI ナビゲーションを表示  -->
      <!--#include file ="navi.html"-->
  </body>
</html>

さいごに

SSIの設定、Apache1.3系とApache2.0系で設定方法が異なるので気をつけましょう。
SSIのコード自体はとても簡単ですね。Apache側の設定が少しめんどくさいかなといったところです。

SSIを使っていると、ローカル環境側での確認作業が、HTMLファイルのダブルクリックだけでは確認できなくなってしまいますよね。
わたしはいつもローカル環境でApacheを入れて確認していますが、もう少し楽に確認出来ればなと思っています。
よい方法が見つかりましたら、このブログで紹介していきます。
それでは!