サーバー専門のフリーランスエンジニアです。クラウドサービスを利用してWebサイト、ITシステムのサーバー構成設計とサーバー構築を行います。TechwebcheckでWebサイトのHTMLリンクをチェックする1016先日、LinuxサーバーにHTMLリンクチェックツールを導入する機会がありました。webcheckというツールが使いやすかったのでここで紹介します。HTMLリンクチェックツール調べてみたところ、このジャンルのツールは、WebサービスやPC上で動作するクライアントアプリはあるものの、Linux上で動作するものはほとんどなく、使えそうなのは次の3つでした。LinkCheckerこの3つを実際に試したところ、リンクチェックを動作させるサーバーへの負荷が少ない。レポートがしっかりしている。いう利点のある、webcheckを採用しました。webcheckのインストール手順や使い方は、以下の記事を参考にしました。ありがとうございます。(参考)・VineLinuxパフォーマンスアッププロジェクト:0197リンク切れを総チェックするにはhttp://mkserver.dip.jp/vinelinux/perform/apache/0197.htmlwebcheckについてwebcheckはPython製のツールです。HTMLリンクチェックのほか、サイトマップ、外部サイトのリスト等の機能もあります。Webクローラーと同じようなしくみでHTTPクライアントとして動作し、WebページのダウンロードHTMLの解析リンクをたどって他のWebページのダウンロードを繰り返し、HTML形式のレポートを出力します。監視専用等の別サーバーのどちらでもよいでしょう。後者のように別サーバーにインストールすると、チェックツールプロセスによるサーバー負荷を軽減することができます。複数のWebサイトに対して順にチェックを実行してレポートを作成する、ということも可能となります。6,7にインストールする場合の手順です。2.7のどちらでも動作します。オフィシャルサイトからダウンロード、展開します。webcheckの実行プログラムです。webcheck.py--また、PythonのHTMLパーサーライブラリが必要となるため、EPELリポジトリよりpython-beatifulsoup4パッケージをインストールします。http://<servername>/webcheck/とします。レポート出力先を作成します。/var/www/webcheckWebサーバーのConfigにレポートページ表示設定を追記して、サービスをreloadもしくはrestartします。/var/www/webcheck;}--※実際には、BASIC認証やアクセス元IPアドレスによる制限をかけたほうがよいでしょう。webcheckの実行webcheckの実行コマンドは次のとおりです。オプションで、レポートデータを上書きします。https://inaba-serverdesign.jp/※このとき、PythonのHTMLパーサーライブラリが存在しないと、以下のようなメッセージを出力して、終了します。unavailable今回はWebサイトと同じサーバーにインストール、実行しました。メモリ1GBで、Webサイトのページ数は224。実行時間は22分22秒で、この間のサーバー負荷は次のとおりです。50MBWebサイトと同じサーバーでwebcheckを実行しているので、webchekのプロセスと、webcheckによるHTTPアクセスを処理するWebサーバー(Nginx)プロセスの両方による負荷がかかっています。Webサイトのページ数がそれほど多くないのに時間がかかっているのは、外部リンクが761と内部ページより多いからでしょうか。実行が速いと、逆にWebサーバーに負荷をかけてしまうので、これぐらいの速度がちょうどよいのかもしれません。webcheckをWebサイトと同居するにせよしないにせよ、Webサーバーへの負荷はかかるので、深夜早朝等、アクセスが少ない時間帯に自動実行するようcronで設定するのがよいでしょう。以下は、毎週日曜日の6時30分に実行する設定例です。/var/log/webcheck.log--webcheckのレポートページWebブラウザからレポートページ(http://<servername>/webcheck/)にアクセスしてみます。レポートページはこんな感じです。レポートのトップページでは、サイトマップを表示します。links」ページで、リンク切れページをリスト表示します。HTMLの記述ミスによるのリンク切れを3つ発見でき、記事を修正しました。Found」がけっこうたくさんありました。ブログ記事の中で参考記事として紹介している外部サイトのページが、いつの間にか移動したり、なくなったりしたものですね。よい記事が参照できなくなってしまうのは残念です。まとめWebサイトのHTMLリンクをチェックするwebcheckというツールの、インストール方法や使い方、サーバーの負荷についてまとめました。オフィシャルサイトからダウンロードできるバージョンは2010年9月にリリースされたもので少し古いのですが、インストールが比較的簡単で、動作は軽量、シンプルながらわかりやすいレポートページを生成してくれるので、よいツールだと思います。Webサイトのページ数が増えると、リンクの不整合が発生するケースもあるかと思いますので、こういったツールで定期的にチェックするとよいでしょう。DesignInaba【お問い合わせ】お名前または法人名・団体名、メールアドレスと、簡潔な内容で構いませんので、お問い合わせ内容をご記入ください。折り返しご連絡いたします。※いただいた情報は他の目的には使用いたしません(個人情報の取り扱いについてはこちらのプライバシーポリシーをご参照ください)。(必須)↑お問い合わせ内容をご確認のうえ、チェックを入れてから「送信」してください。