2013年2月27日水曜日

W3C Markup Validation をローカルに構築する

以下に Windows + Apache での W3C Markup Validation のインストール方法を記述する。
  1. Source code availability for the W3C Markup Validator から validator と collection of DTDs をダウンロードする
  2. ダウンロードした validator.tar.gz と sgml-lib.tar.gz を解凍すると validator-x.x.x というディレクトリが生成される。これを validator に改名して htdocs 以下に移動する
  3. validator/httpd/cgi-bin/check の以下の箇所を変更する
    • 1 行目
      perl.exe のあるディレクトリに変更
      変更前
      #!/usr/bin/perl -T
      
      変更後
      #!c:/usr/perl/bin/perl.exe
      
    • 107 行目
      Config ファイルを指定する箇所を直接指定に書き換える
      変更前
      -ConfigFile => ($ENV{W3C_VALIDATOR_CFG} || '/etc/w3c/validator.conf'),
      
      変更後
      # -ConfigFile => ($ENV{W3C_VALIDATOR_CFG} || '/etc/w3c/validator.conf'),
      -ConfigFile => '(validator を配置したディレクトリ)/validator/htdocs/config/validator.conf',
      
    • 120 行目
      Base ディレクトリを指定する箇所を直接指定に書き換える
      変更前
      Base => ($ENV{W3C_VALIDATOR_HOME} || '/usr/local/validator'),
      
      変更後
      # Base => ($ENV{W3C_VALIDATOR_HOME} || '/usr/local/validator'),
      Base => '(validator を配置したディレクトリ)',
      
  4. Apache 経由でスクリプトが実行できることを確認する。以下の URL にアクセスして確認ができる。
    http://localhost/validator/htdocs/check
  5. ここで perl module が不足しているとエラー表示されるので、必要なものを順次インストールしていく。
    Installation Documentation for The W3C Markup Validation Service (Windows, Apache) の "Needed programs and other prerequisites" に必要なモジュールが zip パッケージで置いてあるのでこれを利用するとよい。
    1. ダウンロードしたファイルを展開し c:\temp の下に置く
    2. c:\temp\ppm ディレクトリに移動し次のコマンドを実行することでローカルにあるモジュールのインストールができる
      ppm install SGML-Parser-OpenSP.ppd
      
    3. インストールが必要だったモジュール
      ppm install Config-General
      ppm install HTML-Encoding
      ppm install HTML-Template
      ppm install Encode-HanExtra
      ppm install Encode-JIS2K
      ppm install SGML-Parser-OpenSP
      ppm install XML-LibXML
      ppm install Net-IP
      
  6. httpd.conf に以下を追加して apache の設定を変更する
    ScriptAlias /cgi-bin "C:\usr\xampp\htdocs\validator\cgi-bin"
    ScriptAlias /validator/htdocs/check "C:\usr\xampp\htdocs\validator\httpd\cgi-bin\check"
    <Directory "C:\usr\xampp\htdocs\validator\htdocs">
        Options ExecCGI Includes Indexes MultiViews
        AllowOverride None
        Order deny,allow
        Allow from localhost
    </Directory>
    
  7. validator/htdocs/config/validator.conf の以下の箇所を変更して localhost からのチェックも行えるようにする
    Allow Private IPs = yes
    

参照: Installation Documentation for The W3C Markup Validation Service (Windows, Apache)

0 件のコメント:

コメントを投稿