2020年1月 Archives

最近の流行りなのかは知りませんが、アクセスログを閲覧すると意味不明なクローラーからのアクセスが頻繁にやってきています。

いわゆるWEBスクレイピングと言われるものらしいのですが、簡単にいえば、サイトを丸ごと、もしくは1部分のみをクローリングでコピペされるというものです。

サイト運営者は訪問者に読まれることを目的に公開しているわけですので、サイトを勝手にコピーされ、リライトされてネット上に無断で公開されるのは不快に感じております。

これが検索エンジン関連のクローラーならアクセスを運んできてくれるメリットがありますが、誰かもわからない個人がサーバーに大量にアクセスしてコンテンツを勝手にダウンロードし、サーバーの負荷をかけた上にネガティブSEOとして活用されるのは迷惑でしかありません。

そのため、アクセスログを確認して、それらしきアクセスは一括で拒否することにしました。

「urlib」や「python」などのユーザーエージェントならほぼ間違いないと思います。これらは一括で拒否するとよいでしょう。

ただ、ユーザーエージェントが偽装されているケースもあり、これを見抜くのは非常に面倒くさいです。IPアドレスでチェックして、同じIPアドレスで多くのページにアクセスしている場合は怪しいです。IPアドレスで調べてみて、一般的なホスト出ない場合には拒否しておくことをおすすめします。

毎日のログをチェックせずとも、月単位でまとめてチェックしてIPアドレスが隔たっていたら拒否してしまうのがよいかもしれません。

現在のレンタルサーバーは「Let's Encrypt」に対応していないため、MovableTypeを新しいサーバーに移転することにしました。

格安でもMovableTypeに対応している会社はありますが、格安サーバーの場合は4千以上あるCMSファイルをFTPでアップロードする際に頻繁にエラーが出て中断してしまうため、ある程度のスペックのサーバーでないと難しいかと思います。最近はWordPressに特化したレンタルサーバーも多いですが、SSD対応というよりも、CPUやメモリがプアだと何度もアップロードをやり直すはめになるかもしれません。

手順については、まずは移転をする前にMovableTypeを最新バージョンにアップグレードしておきます。このバージョンが合っていないとインポートする際に何かと面倒です。

最新バージョンにしたら旧サイト側で「サイトをエクスポート」をしておき、「テンプレート」もエクスポートしておきます。また、「プラグイン」などもエクスポートしておくとよいでしょう。

次に、とりあえずはHTMLやCSSファイルなどを新サーバーにアップロードして、ネームサーバーを切り替えてもサイトはそのままの状態で表示されるようにします。

サイトが新サーバーに切り替わった後、MovableTypeも移転することになりますが、システムについては移転というよりも新しくアップロードする形になるかと思います。

あとはエクスポートしたサイトのファイルを「import」ディレクトリにアップロードして、システムの箇所からインポートボタンを押せば移転が完了します。この際にバージョンが一致してないとインポートすることができないため、最初の段階で最新バージョンにアップロードしておくことが必要になります。

このインポートをする際、旧サーバーと移転先のサーバーではファイルのパスが異なるため、新サーバーにて適当に新規のサイトを作成してパスを確認しておくとよいでしょう。このファイルのパスは作成途中の段階で分かるため、実際に作成する必要はないかと思います。