ばかげた質問ですが、誰かがこのコードのこの部分を詳しく説明できますか? :
301:https:
この小さなセクションで:
$| = 1;
while (<>) {
s/^http:/301:https:/;
print;
}
これは、squid で http を https に書き換えるために使用されます。前にコード 301 が必要な理由がわかりません。ここで 301 Perm-moved が使用されるのはなぜですか?
手伝ってくれてありがとう。
ばかげた質問ですが、誰かがこのコードのこの部分を詳しく説明できますか? :
301:https:
この小さなセクションで:
$| = 1;
while (<>) {
s/^http:/301:https:/;
print;
}
これは、squid で http を https に書き換えるために使用されます。前にコード 301 が必要な理由がわかりません。ここで 301 Perm-moved が使用されるのはなぜですか?
手伝ってくれてありがとう。
私の最初の答えにぴったりです。HTTP プロトコルの定義によると、次のようになります。
301 恒久的に移動
要求されたリソースには新しい永続的な URIが割り当てられており、このリソースへの今後の参照では、返された URIのいずれかを使用する必要があります。
とは対照的に
302件見つかりました
要求されたリソースは、一時的に別の URI に存在します。リダイレクトは場合によって変更される可能性があるため、クライアントは今後のリクエストに引き続きRequest-URI を使用する必要があります。
したがって、コード スニペットは、クライアントに http の使用をやめ、代わりに https の使用を開始するようにアドバイスします。これは主に検索ボットやその他のクローラーに関連しています。ブラウザーは、このように変更されたブックマークを自動的に変更するほどスマートではないと思います。また、作成者が手動で追加した他の Web サイトの参照も変更されません。
コード スニペットで 302 が返された場合、自動化されたボットは http をヒットし続け、サイトが将来 http で再び機能することを期待します。