webForumDet fria alternativet

Dölja sessioner?

9 svar · 417 visningar · startad av azah

azahMedlem sedan dec. 200436 inlägg
#1

Det här verkar vara något av en återkommande fråga, men jag har ännu inte funnit någon bra lösning. Jag har sökt, men det är möjligt att jag missat något.

Jag använder sessioner på min sida för att kunna logga in och administera bloggen. Är man inloggad så visas t.ex. länkar för att ta bort eller redigera inlägg. För att få detta att fungera måste jag som bekant ha session_start(); överst på sidan. Då kommer man lätt in på problemet med PHPSESSID som läggs till i länkarna. Mig stör det inte, men jag kan tänka mig att det förvirrar besökarna i onödan.

Min fråga är alltså hur jag skall göra för att besökarna inte skall behöva komma i kontakt med sessionerna i form av sessionsid:t i länkarna. Jag vet att det dyker upp i samband med att besökaren stängt av cookies, men eftersom det inte finns någon information att lagra känns det meningslöst att dessa dyker upp.

Jag har förstått att det går att stänga av PHPSESSID i konfigurationsfilen för php, men såvitt jag vet har jag inte möjlighet att ändra i den på mitt webbhotell.

Hoppas att någon kan hjälpa mig en bit på traven (jag ber om ursäkt ifall frågan dykt upp flera gånger tidigare).

LaLaMedlem sedan aug. 200413 inlägg
#2

Ett knep:
Använd ramar för adressen för dem syns aldrig i adressfältet.

kanske inte den bäste lösningen men de kan funka

stevenetMedlem sedan juni 20001 251 inlägg
#3
<?php
// spara sessionen i en cookie
ini_set("session.use_cookies","1");

// stäng av trans_sid
ini_set("session.use_trans_sid",false);

session_start();
?>
azahMedlem sedan dec. 200436 inlägg
#4

Tack för era svar. Jag är däremot lite skeptisk till ramar - främst eftersom jag inte vill dölja adresserna till de enskilda sidorna.

Koderna som stevenet postade har jag testat tidigare (iaf något liknande), men jag tyckte inte att det gav resultat. Jag såg i statistikloggarna att flera besökare fått sessionsid:t på länkarna i allafall. Kanske gjorde jag fel någonstans, så jag gör ett nytt försök! Jag hör av mig om resultatet sedan.

Förresten, visst är det så att jag måste lägga session_start(); på samtliga sidor för att det inte skall strula någonstans?

azahMedlem sedan dec. 200436 inlägg
#5

Nej, jag får det ändå inte att fungera.

Det jag gjort är alltså att lägga in stevenets kod överst på alla sidor som använder sig av sessioner. Problemet dyker då upp när man klickar sig vidare till en sida utan session_start();

Jag trodde att lösningen var att lägga session_start(); på samtliga sidor, men så lätt var det tydligen inte. Är det någon som vet vart felet kan ligga?

CompusaMedlem sedan jan. 20023 327 inlägg
#6

Jag förstår inte varför du ska försöka få borturl-rewriting, dvs PHPSESSID från dina länkar. Enda anledning till att dessa läggs till är för att din sida ska fungera med sessioner även om man stängt av cookies i sin webbläsare. Stänger man av cookies så tycker jag att man allt kan få bli lite förvirrade. Om du inte vill ha dessa konstiga adresser, så kommer det ledan till en och samma sak, dvs din sida kommer inte fungera som du tänkt dig om användaren stängt av cookies.

azahMedlem sedan dec. 200436 inlägg
#7

Det har du helt rätt i. Men grejen i mitt fall var att det enbart är jag som webmaster som behöver komma i kontakt med sessionerna. För besökarna fyller de ingen funktion eftersom det enbart är jag som kan logga in på sidan. Jag kanske tänker helt bakvänt nu, men eftersom sessionerna inte har något värde för besökaren finns det heller ingen anledning att spara sessionsid:t i länken.

TheMagnusMedlem sedan juli 2006461 inlägg
#8

azah skrev:

Mig stör det inte, men jag kan tänka mig att det förvirrar besökarna i onödan.

Jag tror inte att du behöver oroa dig. Det är liksom så här det är uppbyggt. Har en besökare stängt av cookies så måste man kunna skicka med sessionsvariabler på ett annat sätt, och det är då via url:en.

CompusaMedlem sedan jan. 20023 327 inlägg
#9

Jag tror inte det kommer att fungera så länge som du inte har tillgång till konfigurationsfilen och kan stänga av det därifrån. Men jag tycker du ska tänka över det här både en och två gånger, för det känns som du kan lägga krokben på dig själv.

Det finns egentligen bara följande alternativ:
* Sidan ska fungera med sessioner och cookies måste vara påslaget
* Sidan ska fungera med sessioner och cookies kan vara avslaget

Bara att välja ;)

azahMedlem sedan dec. 200436 inlägg
#10

Jag märker att åsikterna är delade om det här. Om sessionsid:it i länkarna hade fyllt någon funktion för besökarna hade jag låtit det vara som det är. Men i mitt fall gör det inte det, därför tycker jag bara att det känns onödigt.

Hursomhelst var jag i kontakt med webbhotellet, och kom fram till en lösning. Genom att skapa en egen php.ini med inställningarna kunde jag styra konfigurationen direkt i mappen.

128 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)