私はこのブログのリンク先と、リンクカードを表示するための情報を Google Sheets + Google Apps Script を用いて管理 + 自動取得をやっています。
ただ、その際に古いリンク先が謎のチカチカエロスパムサイトと化していた事があったので、今日はその辺りの話をします。
古いリンク先は死んでいる事が良くある
ブログを長く書いていると様々なブログやリンク先へ言及することがあります。
特にブログ繁栄の古い時代、主にX(旧 Twitter)などが台頭する以前のブログ全盛期では、 ブロガー同士がトラックバックなどを飛し合い、今で言うお気持ち長文を用いて殴り合う、 と言うようなインターネットバトルが良く行なわれていました。
しかし2023年11月現在その文化はほぼ廃れてしまい、その頃に言及していたリンク先のブログが消滅していたり、 あるいはドメイン自体が滅んでいる事もままあります。
とは言えブログやドメインが場合によっては有償で確保されている事もある以上、 ブログやドメインの保持が割りに合わなくなる、と言うこと自体は止むを得ません。 なにせお金がかかりますからね。あと人によっては亡くなっている場合もありますし。
ただ独自ドメインブログの消滅に関して問題がいくつかあり、ドメインが期限切れと同時に他人に取得された場合、 謎のSEO収益化ブログになっていたり、最悪の場合で謎のチカチカエロスパムサイトになっている事があります。
そのためそう言ったリンク先へリンクしないためにも、リンクの生存チェックが必要である、 と言う事が今回の主題です。
古いリンク先を管理するためにはどうしたら良いか
これはブログによります。
まず全体として、
- 過去のブログ記事からリンク先をすべて抜き出す
- リンク先の生存を何かしらの方法で確認する
- 消滅している、もしくはスパム化しているリンク先は取り除く
と言う流れになりますが、これを実現するための方法は様々です。
例えば私のブログは自家製の静的サイトジェネレーターを用いて管理・生成を行なっているため、
- ジェネレーターで生成した HTML をパースして埋め込みURLを抜き出す
- 抜き出したURLを一旦すべて取得し、その結果を Google Sheets へインポート
- Google Sheets の情報を元に出力から無効なURLを自動的に除去
と言う流れでリンク切れへ対処しています。
ただ実際の過去ログについては未だに手を入れていないため、ここから先の作業として、
- 過去記事内の無効なURLを有効なURLに置換する
- 無効なURLはそのまま維持し、生成段階でリンクを無効化する
と言う事を行う予定をしています。
また先にも書いたように、今のところリンク先の情報は Google Sheets で管理しており、 その情報の更新を Google Apps Script で行なっているので、 その情報を定期的にチェックしてリンク切れを見つけるようにすると言う事が今後の作業です。
リンク切れを見つける事が難しい場合はどうするか
とは言え、私の場合は手元にHTMLファイルが存在するが故に取れる手段です。
例えばこれがブログのホスティングサービスを利用していた場合、
- ブログ記事のすべてを一旦エクスポートしてリンク先URLを抜き出す
- 抜き出したURLを何らかの方法で確認する
- 最後に発見したリンク切れを手作業で修正する
と言う流れを取るしかないと考えています。
またURLをまとめて取得してリンク切れを起こしているかどうかのチェックについては、 何からしらのプログラムを利用する or スクリプトを書く必要がありますし、 それも困難であれば手作業でリンクを調べて貼り替えて行くしかないと思います。
なお手作業でリンクの貼り替えを行う場合、
- 古い記事から貼り替えていく
- 新しい記事から貼り替えていく
の2つの方針があると思いますが、これはブログの性質や、過去の記事と現在に近い方の記事、 どちらを優先するかで決めて行くと良いと考えています。
以上
まぁリンク切れを見つける方法やリンク切れを貼り替える方法については一概に方法論を言えないため、 各自臨機応変にやってくれ、としか言えないのですが、リンク切れの問題については何かしらの対策を打つ必要があると思っています。
またこれからリンクを貼って行くぞ!みたいな場合では、
- リンクを貼った記事とリンク先の情報を Google Sheets などにまとめておく
- リンク先のチェックを何かしらの方法で定期的にチェックする
- リンク先がリンク切れになっていたら適宜貼り替える
と言う手段が取れるとは思います。とは言えこれはこれからどうするかの話なので、 過去のURLにはあんまり効果的ではないですけどね。