¿El redireccionamiento 301 siempre conserva el referente?

Quiero saber si el redireccionamiento 301 siempre conserva el referente.

Hago una página llamada "gotoorig_https.html" que contiene un hipervínculo a una página "orig_https.asp".
"orig_https.asp" redirigirá 301 a "dest.html", que muestra el documento.referrer.

En este caso,

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  

También hago una página llamada "gotoorig_http.html" que contiene un hipervínculo a una página "orig_http.asp". "orig_http.asp" redireccionará 301 a "dest.html", que muestra el documento.referrer.

En este caso,

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.

¿Por qué sucede el último caso?

Respuestas a la pregunta(3)

Su respuesta a la pregunta