webForumDet fria alternativet

Hindra direkt access. Bara access via en särskild länk.

Webbservrar

5 svar · 1 047 visningar · startad av Danne V

Medlem sedan aug. 20068 090 inlägg
Frågan#1

Vet inte om det passar här, men då är det väl bara att flytta tråden....

Har en chat som inte ska kommas åt direkt, utan bara via en särskild länk i en meny (som man i sin tur måste vara inloggad för att komma åt).

Gör man det i htaccess, eller hur fixar man det?

Medlem sedan juni 2009920 inlägg
#2

Hur ska servern veta om du går in via länken eller direkt till sidan?

Medlem sedan juni 20006 022 inlägg
#3

På målsidan kan du kolla att http_referer är länksidan.

Medlem sedan aug. 20068 090 inlägg
#4

Gildebrand skrev:

Hur ska servern veta om du går in via länken eller direkt till sidan?

Genom att tala om det för servern: "Access till den här sidan tillåts endast från foo.html"

Bara att jag vet inte hur man gör.

Medlem sedan aug. 20068 090 inlägg
#5

Quid skrev:

På målsidan kan du kolla att http_referer är länksidan.

Jag har hittat något för en htaccess i mappen för målsidan:

RewriteCond %{HTTP_REFERER} !^http://www.yoursite.com.* [NC] 
RewriteCond %{HTTP_REFERER} !^http://subdomain.yoursite.com.* [NC] 
RewriteCond %{HTTP_REFERER} !^http://.yoursite.com/subfolder.* [NC] 
RewriteCond %{HTTP_REFERER} !^http://yoursite.com.* [NC] 
RewriteCond %{HTTP_REFERER} !^http://www.yoursite.com/subfolder.* [NC] 

RewriteRule /* http://www.yoursite.com/index.php [R,L]

Funkar detta (med vissa modifikation beträffande referer och target givetvs)?

Medlem sedan jan. 2005953 inlägg
#6

Att förlita sig på HTTP_REFERER är inte att rekommendera, eftersom den är lätt att manipulera. Det är dessutom inte helt ovanligt med browser plugins som rensar HTTP_REFERER.

Det räcker inte med att vara inloggad då? Då är det ju bara en inloggningskoll som behöver göras. Annars skulle du kunna använda en transersida som sätter en sessionsvariabel som du kontrollerar på målsidan.

Alltså, länksidan skickar besökaren till en sida som bara har som uppgift att sätta en sessionsvariabel och sedan skicka besökaren vidare till den tänka målsidan. På målsidan kontrollerar du om sessionsvariabeln är satt. Om den är det, rensa sessionsvariabeln och visa innehållet för besökaren. Om den inte var satt, visa felmeddelande eller skicka besökaren till startsida eller hur du vill göra.

252 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)