外部に公開するサービスではないため、通常利用している ドキュメントルートには設置せず、ドキュメントルート外でApacheのAlias 処理でルートマッピングし、公開します。 また、htmllint専用のApache設定ファイルを作成しApacheの設定を行ないます。管理、設定上都合がいいのでこのようにしています。(後 述)
/httpd/htmllint へ設置したと仮定して説明します。
※ Apacheの設定に関しては、公開できて CGI が動作すればどこに設置しようが自由ですので、適宜やり易いようにされたら良いと思います。
石野 恵一郎 さんのサイトから、最新の Another HTML-lint をダウンロード、解凍し、任意のディレクトリに設置します。
フルパッケージを入手します。
http://openlab.ring.gr.jp/k16/htmllint/download.html
任意のディレクトリ /httpd/htmllint に設置した場合の例です。
パーミッションを変更します。
モジュールをリストします。
CGIに適切な権限を与えます。suEXECを使用していない場合です。
htmllint の設定ファイルは /httpd/htmllint/htmllint.env で行います。このファイルはなく、サンプルとして htmllintenv が提供されています。このファイルを htmllint.env にリネームして以下を修正します。
htmllint内のファイルは、EUC で書かれていますので、テキストエディタを使って編集、保存する場合は、他のコードにならないように注意して下さい。
出力コードを UTF8 に変更します。
#$KANJICODE = 'JIS'; # JIS/EUC/SJIS/UTF8 のいずれか
↓
$KANJICODE = 'UTF8';
に変更します。
テキストブラウザ 「LYNX」で見た場合の結果表示に必要です。
FedoraCore/CentOS の場合のパスは以下になります。
#$LYNX = '/usr/local/bin/lynx -dump -nolist -force_html';
↓
$LYNX = '/usr/bin/lynx -dump -nolist -force_html';
下記コマンドでlynx がインストールされていなければ、
下記コマンドでlynx がインストールされていなければ、
lynxを使用する場合、CHARACTER_SET をeuc-jp に変更しなければ文字化けをおこしますので、キャラクターセットを変更します。
#CHARACTER_SET:utf-8
↓
CHARACTER_SET:euc-jp
tagslist.cgi / parsedtd.pl / htmllint.cgi のperlパスを変更します。 適当なエディタで開き、1行目にかかれているパスを変更します。RHL系Linuxでは、以下のパスになります。
#!/usr/local/bin/perl
↓
#!/usr/bin/perl
自分は毎度毎度、面倒なので、/usr/local/bin/perl に /usr/bin/perl のシンボリックを置いています。
/httpd/htmllint をApacheで公開します。RHL/FedoraCoreでは、cgi-binディレクトリでは、htmlやイメージファイルは設置出来ないようになっています。(動作しません)
また、 /htmllintには、一つのディレクトリに全てまとめられていますので、FedoraCore、CentOSではデフォルトのcgi-binディレクトリに設置しても動かすことが出来ません。
パスを変更するのは大変なので、cgi-bin ディレクトリには設置せず、任意に設置した/httpd/htmllint ディレクトリに cgi の実行許可を与えるようにします。
/etc/httpd/conf.d に htmllint.conf というファイルを作成します。
Alias /htmllint/ "/data01/htmllint/"
<Directory /data01/htmllint/>
Options ExecCGI
deny from all
allow from 192.168.5.173 ← 接続を許可するホスト
</Directory>
※ Apache 2.* の場合です。1.3系の場合は、httpd.conf に記述します。
httpd サービスを再起動し、ホスト 192.168.5.173 からアクセスして確認してください。上記の例では、URLアドレスは以下になります。
http://mydomain.net/htmllint/
Apacheのディレクティブ設定のポイントを掻い摘んで説明しています。
参照 =>
Apache2初期導入の管理・設定例
詳細は、下記 Apache ドキュメントを参照して下さい。
参照URL => Apache HTTP サーバ バージョン 2.0 ドキュメント
以上で終了です。参考ですが、次頁でベンチマーク結果を載せておきます。