mieki256's diary



2020/01/08(水) [n年前の日記]

#2 [hns] hns_linkarc.pl が https に対応してないことに気づいた

この日記ページは、hns というWeb日記システムを使って表示されていて。更に、各記事内でメモしたリンク先が消滅した際のバックアップを兼ねて、hns_linkarc.pl というPerlスクリプトを回して、リンク先をサーバに保存しているのだけど。 *1

その、hns_linkarc.pl が、https に対応してなかったことに、今頃気づいてしまった…。結構膨大な数のページがバックアップできてなかった…。いやまあ、hns が使われていた当時、ネット上のURLは http ばかりで、https なんてほとんど無かったから…これはもう仕方ない。

一応修正を試みたり。hns_scan() 内で、「http:」の文字列があるかどうかを調べているので、「https:」についても調べるようにすればいいのではないかな。たぶん。

sub hns_scan($) {
...
        if ($_ =~ /^(LINK|LSUB|LNEW|LSTRIKE|LIMG)\s+((http:|ftp:)\S+)/) {
↓
        if ($_ =~ /^(LINK|LSUB|LNEW|LSTRIKE|LIMG)\s+((https:|http:|ftp:)\S+)/) {

ただ、このスクリプトは、LWP なるPerlモジュールを使ってURL先を取得しているようで。その LWP が https も取得できるかどうかが、ちょっと気になる。

LWP を https に対応させる。 :

ググってみたら、LWP を https に対応させる方法が紹介されてた。まあ、エラーが出る場合はこうしよう、てな話だそうで、エラーが出ていない環境なら、やらなくてもいい作業かもしれないのだけど。

_[Perl,CPAN]LWPでhttpsにアクセスする方法 - Qiita

一応、念のため、自分も上記ページを参考にして作業。

root になってから、以下を打った。
perl -MCPAN -e shell

install Crypt::SSLeay
install IO::Socket::SSL
install LWP::Protocol::https
exit

apt install perl-Net_SSLeay
apt install perl-Crypt-SSLeay
apt install perl-IO-Socket-SSL

色々ビルドしたようで、結構時間がかかった。

前述の hns_linkarc.pl を実行してみたけれど、https: が書かれたURLも取得できているように見える。これでなんとかなったかな。たぶん。

*1: 保存しているのはリンク先の html のみで、画像やCSS等は保存していなかった…ような記憶が。まあ、テキスト情報だけでも残っていればまだマシというか。また、バックアップしたソレを見るためには、特定のユーザ名とパスワードが必要になるので、誰でも見れる状態にはなってない、と言い張れるのではないかなあ、と…。

以上です。

過去ログ表示

Prev - 2020/01 - Next
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project