![]() |
Har försökt sätta Referer-headern när jag redirectar trafik. Provade detta:
<?php header("Referer: http://www.set-adress.com"); header("Location: http://www.new-location.com"); ?> Redirecten fungerar ju, men Referer-headern är tom fortfarande. Någon som har ett förslag på alternativt sätt? Har sett lösningar med CURL, men det stöds in hos Loopia. |
Servern kan inte sätta referer-headern.
|
Aha, det låter ju iofs logiskt eftersom det sköts av browsern...
Men här presenteras ju ett sätt iaf: http://www.mustap.com/phpzone_post_6...the-referer-se Dock i sammanhanget POST vilket ju inte är aktuellt här. Går det att "översätta" till vanligt sidanrop? EDIT: Äsch, länken vill inte bli länk trots att jag använder länkknappen... får bli cut&paste. |
Kollade aldrig på länken men här är relevant avsnitt RFC:n för HTTP:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html Kolla på rubrik "14.36 Referer" |
Att den är tom brukar bero på någon form av brandvägg eller liknande som "skyddar" den informationen.
|
Om du redirectar så följer den ursprungliga referen med, om det finns något.
Genom att sätta en META refresh, så förloras den ursprungliga referen. Men du kan inte sätta vilken referer som du vill. Referern kommer då istället att bli den sida som gör refresh. Du kan också göra en JavaScript redirect. En del browsers (kommer inte ihåg vilka på rak arm) skickar då med en blank referer. |
Citat:
|
Citat:
|
Citat:
|
Ett tips till dlinder, för att kolla vilka headers som sätts, är att göra en sida som endast innehåller
Kod:
<?php phpinfo() ?> |
Citat:
|
Citat:
Dock får jag det inte att funka med meta refresh. Kör följande php-kod: <?php echo '<meta http-equiv="Refresh" content="0;URL=http://www.domän.com/phpinfo.php">' ?> Phpinfo har i det läget inte ens HTTP_REFERER med som värde, dvs inte ens en ruta med "no value". Skapar jag istället en vanlig länk som länkar till phpinfo-scriptet fungerar det bra. Vad gör jag för fel? Tack för all hjälp. |
Hej igen!
Jag hade fel. En meta refresh skickar inte med någon referer alls. Den blir blank. Sorry! Jag tittade in en på en sida som jag vet använder sig av redirect för att gömma referern. Så här bär de sig åt. Själva redirecten fungerar. Men jag visste inte att man kan göra på det här sättet. Och jag tror faktiskt inte att själva referer biten fungerar (det borde inte fungera). Men du kan prova och se vad du får för resultat: Kod:
<?php |
Om du hemskt gärna vill ha refernern så kan du ju skapa en egen header.
En browser som följer standarden skall så vitt jag minns skicka tillbaka alla okända headrar den får från servern tillbaka till servern vid nästa request. Kräver dock att du kör på samma server iofs... Så i princip borde det vara möjligt att göra: Kod:
header('MyReferer: ' . <the referer>); |
Blackex:
Som du misstänkte fungerade Referer-biten tyvärr inte. Det sjuka i allt det här är att jag enligt min logg har lyckats uppdatera om Referer-headern på en redirectsida EN gång, men kan inte för mitt liv komma på hur jag gjorde... eg0master: Ingen dum idé alls! Dessvärre kommer detta utnyttjas även utanför min sajt varför en standardiserad Referer-header i princip är nödvändig. |
Citat:
Men vad är det du vill skydda egentligen. |
Alla tider är GMT +2. Klockan är nu 17:38. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson