0

ばかげた質問ですが、誰かがこのコードのこの部分を詳しく説明できますか? :

301:https:

この小さなセクションで:

$| = 1; 
while (<>) {
     s/^http:/301:https:/;
     print;
}

これは、squid で http を https に書き換えるために使用されます。前にコード 301 が必要な理由がわかりません。ここで 301 Perm-moved が使用されるのはなぜですか?

手伝ってくれてありがとう。

4

1 に答える 1

0

私の最初の答えにぴったりです。HTTP プロトコルの定義によると、次のようになります。

301 恒久的に移動

要求されたリソースには新しい永続的な URIが割り当てられており、このリソースへの今後の参照では、返された URIのいずれかを使用する必要があります。

とは対照的に

302件見つかりました

要求されたリソースは、一時的に別の URI に存在します。リダイレクトは場合によって変更される可能性があるため、クライアントは今後のリクエストに引き続きRequest-URI を使用する必要があります

したがって、コード スニペットは、クライアントに http の使用をやめ、代わりに https の使用を開始するようにアドバイスします。これは主に検索ボットやその他のクローラーに関連しています。ブラウザーは、このように変更されたブックマークを自動的に変更するほどスマートではないと思います。また、作成者が手動で追加した他の Web サイトの参照も変更されません。

コード スニペットで 302 が返された場合、自動化されたボットは http をヒットし続け、サイトが将来 http で再び機能することを期待します。

于 2013-11-05T16:28:04.093 に答える