このページは自宅サーバーHTML文法チェッカーとしてhtmllintをインストール方法の実践レポートです。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
HTMLチェッカー"htmllint"

HTMLチェッカー"htmllint"

htmllintのインストール〜1

htmllintのインストール〜2

自宅サーバーのhtmllintを使う


自宅サーバーにhtmllintをインストールする(続き)

前のページの続きです。

htmllintはPerlを使ったCGIなので、それなりに細々した設定が必要です。

といっても、PerlのCGIを使った普通のコンテンツの設定と基本的には同じなんですが。

6.ディレクトリにCGIの実行許可を与える

Apacheの設定で、例えば"/etc/httpd/conf/httpd.conf"の中に、

/etc/httpd/conf/httpd.confへの追加記述
/etc/httpd/conf/httpd.confへの追加記述

と記述を追加してやればOKです。

既にドキュメントルート"/var/www/html"以下に"Options ... ExecCGI"の指定がある場合でも、何かの都合でその"ExecCGI"を無効にしなきゃならないこともあるでしょうから、htmllintのディレクトリには明示的に指定しておくほうが後々悩まずに済みます。

また、既に"/etc/httpd/conf/httpd.conf"に色々ポップな追加設定をしている方は、「htmllintの設定って、どのあたりに書いたっけ...。」みたいなことにもなりかねません。

そういう場合は無理に"/etc/httpd/conf/httpd.conf"に追加記述をしないで、"/etc/httpd/conf.d"以下に"*.conf"というファイル名で専用の設定ファイルを置いておくというテもあります。"*"のところは何でも構いません。

htmllint専用の設定ファイル/etc/httpd/conf.d/check_html.confの内容
htmllint専用の設定ファイル/etc/httpd/conf.d/check_html.confの内容

「えっ、でもこれじゃ誰でもインターネットからこの"htmllint"を使えることになるんじゃないの?。いやだなー、自分専用にしないなー。」

はい。良いところに気が付きましたね。そのとおりです。そういう了見の狭い方は、

htmllintの利用をLANに制限する
htmllintの利用をLANに制限する

とでもしておきましょう。そうするとLAN以外からは接続できなくなります。

「他人には使われたくないけど、どこからでも使えるようにしたい。」なんて了見が狭いうえにわがままな人は、 ユーザー認証機能の設定 あたりを参考にしてディレクトリに認証をかけてしまいましょう。

Apacheの設定を変更したら、変更を有効にする作業 httpdのコントロール を忘れずにやってくださいね。

7.Perlのモジュールをインストールする

htmllintは Another HTML-lint Download の説明にもあるとおり、"Jcode.pm"、"CGI.pm"、"LWP"の三つのPerlモジュールを追加インストールする必要があります。

Perlモジュールのインストール(検索文字列の日本語化) 、や、 Perlモジュールのインストール(Pop-before-smtpの設定) あたりを参考にしてインストールをやってください。

"LWP"をインストールするときは途中で何やら色々職務質問されますが、全部「Enter」で大丈夫です。

「"Jcode.pm"って、インストールしてなかったっけ?。」

なんてことは思い出す必要はありません。既にインストールされているモジュールをもう一度インストールしようとすると「それはもう入っとるよ。」といわれるだけです。

ま、既にインストールされているモジュールのバージョンを最新にする意味でも、ひととおり全部インストール作業はやっておいたほうが良いですね。多分。

8.初期設定の変更と"htmllint.env"の外部からの参照禁止設定

htmllintはデフォルトの設定のままでちゃんと使えますから、強いて設定ファイルを修正する必要はないでしょう。けど、"/var/www/html/check_html/htmllint.env"をエディタで開いて適当に編集することでカスタマイズできます。

内容はその設定ファイル自身に書かれていますし、わからないところは htmllint を参考にして適当に悩んでください。

さて、この初期設定ファイルはセキュリティの観点から、第三者に中身を見せるのは好ましくありません。そこで例えば以下のような内容のテキストファイルを"/etc/httpd/conf.d/htmllintenv.conf"という名前で設置しておきましょう。

htmllint.envの参照を自機のみに限定する
htmllint.envの参照を自機のみに限定する

もちろん同じ内容を"/etc/httpd/conf/httpd.conf"や、先ほど作成した"/etc/httpd/conf.d/check_html.conf"に追加記述しても構いません。

ここでこのように"Files"コンテナ コンテナディレクティブの形式 を使うことで、"htmllint.env"は"localhost"、つまりサーバー自身しか参照できなくなります。

もちろんこの設定はドキュメントルート内のどこでも有効になりますから、htmllintの場所をどこに移動しても大丈夫です。ちゃんと(?)見えません。

くどいようですがこの設定を行ったら必ず変更を有効にする作業 httpdのコントロール を忘れずにやってくださいね。

このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
www.centos.org - The Community ENTerprise Operating System