PCで遊んだ日々の備忘録

Making PC and Customization PC

http が https でインデックスされる現象について

2016年11月末ウェブサイトを http で公開しているのに Google検索すると https でインデックスされているページが出てきました。

もちろん https の設定など 1度もしていませんし、そもそも自宅ウェブサーバーに OpenSSLをインストールしてはいますが設定はデフォルトの状態です。(ssl.confの DocumentRoot と ServerName のコードはコメントアウトされている)

そして Google Search Consoleに登録している URLは下記の2つです。

http://fuukemn.biz/
http://www.fuukemn.biz/(正規化済)

2021年7月現在、当サイトは https(HTTPS/2)で配信しています。


Google検索での現象

下の画像はキーワード「アドオン hide un」で検索した時のスクリーンショットです。タイトル下のURLが

https://fuukemn.biz/page52.html 

と表示されているのが分かると思います(fig1)

もちろんこのページはクリックしてもウェブブラウザ(Firefox)がブロックするので開く事はできません。Internet Explorer 11ですと開けますが。

そこでURL右の▼をクリックしてキャッシュを見ると(fig2)サイドメニューを表示する<iframe>タグ部に問題があるようです。

次に、Google検索にインデックスされている全てのページを確認するため検索窓に

site:www.fuukemn.biz 

と入力してみるとサイドメニュー(smenu.html)

https://www.fuukemn.biz/smenu.html 

でインデックスされていることが分かりました(fig3)

キーワード検索結果の画像

fig.1 キーワード検索

ウェブキャッシュの画像

fig.2 ウェブキャッシュ

インデックス済ページの画像

fig.3 インデックス済ページ

なお、検索窓に

info:https://www.fuukemn.biz/smenu.html 

を入力してみましたが当然ながらここにも表示されていました。

▲ 目次へ

原因と対策

ルーターとサーバーの状態

  • ルーター
    • IPマスカレードテーブル設定・・443番にポートフォワーディング
  • サーバー
    • IPテーブル・・443番ポート開放
    • OpenSSL・・・デフォルトのまま
    • ssl.conf・・・未設定

原因

443番ポートが開いているため?SSLが稼働しているため?・・・原因がよく分からない。

対策

原因がよく分からないまま下記を実施してみました。根拠はありません、なんとなくです。

  • ルーター・・・443番のポートフォワーディング削除
  • smenu.htmlの <head></head> 内に次のコードを追記
<link rel="canonical" href="http://www.fuukemn.biz/smenu.html"> 

サーバーのシステムは弄っていません。

結果

上記の対策を実施した翌日、キーワード「アドオン hide un」で検索してみると httpsの表示は消えていました。

下の画像は Firefoxで検索した時のスクリーンショットです。また Internet Explorer 11でYahoo!検索した結果も同じでした。Bing検索ではページ自体が表示されませんでした。

なお httpsでインデックスされているページ(smenu.html)はそのままでしたがそのうち削除されると思います。もしも長期間削除されないようであれば次のメタタグを追記しようと思います。

<head>
<meta name="robots" content="noindex">
</head>

もう1つ robots.txtでページそのものをクローラーからブロックする事もできますが Google Search Consoleでエラーが出る事を確認しています。これは多分このファイル(smenu.html)がページを構成するパーツの一部だからでしょう。

なのでここは noindexで対応することにします。

実はrobots.txtでページをクローラーからブロックしてもそのページに外部からのリンクがあるとそのリンクを辿ってインデックスされる事があるようです。

そもそもGoogleはSearch Consoleヘルプの中で「robots.txtをウェブページの非表示に使うな」、ページを非表示したいなら「noindexメタタグを使え」と言っています。

robots.txtを使用してURLをブロックする robots.txt ファイルについて

メタタグを使用して検索インデックス登録をブロックする

雑感

なぜ httpが httpsでインデックスされてしまったのか調べてみたのですが、どうやらGoogle検索クローラーはサーバーでSSLが稼働している(sslライブラリーは多数のプログラムが共有している)とSSL証明書の有無にかかわらず httpsと認識してしまう事があるようです。

参考|ウェブマスターヘルプフォーラム webサイトのURLが「HTTP」なのにgoogleに「https」としてインディックスされている

またルーターの443番ポートを閉じたその翌日にはインデックスは削除されていないものの検索結果の表示は httpになったのでルーター、サーバー共にポートが開いていたのも原因の1つではないかと思います。確証はありませんが。

しかしどうしてサイドメニュー(smenu.html)のページだけがインデックスされてしまったのかが分かりません、謎です。

ルーターのポートが開いていたのは...

なぜ使ってもいないルーターの443番ポートが開いていたのかについては当サイトを公開して暫らくたって httpsの接続テストをしたのを思い出しました。

その時ポートを閉じ忘れたのか公開しているサイトに関係ないと思い意図的に閉じなかったのかは定かではありませんが、いずれにしろ使っていないポートは必ず閉じておくのが基本ですよね。

▲ 目次へ

クリエイティブ・コモンズ・ライセンス
Top of Pageの画像
sidemenuの画像