Behält 301 Redirect immer den Referrer bei?

Ich möchte wissen, ob 301 Redirect Referrer immer beibehält.

Ich erstelle eine Seite mit dem Namen "gotoorig_https.html", die einen Hyperlink zu einer Seite "orig_https.asp" enthält.
"orig_https.asp" leitet zu "dest.html" weiter, wodurch document.referrer angezeigt wird.

In diesem Fall,

http page(gotoorig_https.html) -> orig_https.asp(301 redirect)-> https page (dest.html) <--the referrer preserves  
https page(gotoorig_https.html) -> orig_https.asp(301 redirect)-> https page (dest.html) <--the referrer preserves  

Ich mache auch eine Seite mit dem Namen "gotoorig_http.html", die einen Hyperlink zu einer Seite "orig_http.asp" enthält. "orig_http.asp" wird 301 zu "dest.html" umleiten, was den document.referrer anzeigt.

In diesem Fall,

http page(gotoorig_http.html) -> orig_http.asp(301 redirect)-> http page (dest.html) <--the referrer preserves  
https page(gotoorig_http.html) -> orig_http.asp(301 redirect)-> http page (dest.html) <--the referrer DOES NOT preserve.

Warum passiert der letzte Fall?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage