Avatar billede morw Nybegynder
27. marts 2004 - 11:19 Der er 16 kommentarer og
2 løsninger

Session problemer i IE

Hej

Jeg bliver sindsyg meget snart ;-D

Jeg er ved at lave et site hvor jeg bruger sessions.

Det går fint derudaf og jeg sidder og bruger Mozilla.

Så ville jeg lige teste i IE, men så holder mine sessions op med at virke. Hvad kan det skyldes?

Jeg starter sessions med session_start();

Jeg sætter session variabler med $_SESSION['site_language'] = 'dk';

Jeg kan se at php sætter session i headers, men at IE ikke sende værdien tilbage:

Fra webserver:

(Response Status)    HTTP/1.1 200 OK
Connection    Keep-Alive
Content-Type    text/html
Date    Sat, 27 Mar 2004 10:15:35 GMT
Keep-Alive    timeout=15, max=98
Server    Apache/1.3.28 (Unix) mod_ssl/2.8.15 OpenSSL/0.9.7a
Set-Cookie    PHPSESSID=a360b9ea32a69f4458dd6b5308816a0c; path=/
Transfer-Encoding    chunked


IE ved næste request:

(Request Method)    GET /contact.php?set_lang=dk HTTP/1.1
Accept    image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Accept-Encoding    gzip, deflate
Accept-Language    da
Connection    Keep-Alive
Host    ...
Referer    ...
User-Agent    Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

Hvad er det lige der sker?
Avatar billede htm Nybegynder
27. marts 2004 - 11:35 #1
Får du "indkørsel forbudt" skiltet nede ved statuslinien ?

Du har måske slået cookies i sessionen fra. funktioner->internetindstillinger->beskyttelse af...

Men ellers prøv og test med et lille eks. på en side ala dette script:

<?php
session_start();
if (!isset($_SESSION['test']))
{
    $_SESSION['test'] = "ja";
    header("location: " . $_SERVER['PHP_SELF']);
}
else
{
    echo "Sessionen test indeholder : " . $_SESSION['test'];
}
?>
Avatar billede morw Nybegynder
27. marts 2004 - 11:42 #2
den virker i mozilla, men ikke i ie.
Avatar billede htm Nybegynder
27. marts 2004 - 11:43 #3
Har du tjekket indstillingerne ?
Avatar billede morw Nybegynder
27. marts 2004 - 11:44 #4
Min ie har standard indstillinger. Men jeg har også prøvet at åbne helt under privacy, men uden held.
Avatar billede morw Nybegynder
27. marts 2004 - 11:45 #5
Men siden skulel jo gerne virke hos alle og ikke kun mig
Avatar billede htm Nybegynder
27. marts 2004 - 11:48 #6
Det bør også virke for alle... :-) Har lige tjekket med alt blokeret hvor alting stadig virker. Kan du ikke lige smide en phpinfo() op?

<?php
phpinfo();
?>
Avatar billede ellebaek Nybegynder
27. marts 2004 - 11:51 #7
IE6 har andre indstillinger i forbindelse med cookies/ sessions

funktioner -> interindstillinger -> beskyttelse af personlige oplysninger -> avanceret -> sæt hak i tilsidesæt automatisk håndtering af cookies og accepter alle inklusiv cookies under sessions...

i IE6 er Cookies vidst slået fra som standart.
Avatar billede morw Nybegynder
27. marts 2004 - 11:52 #8
Her der det om sessions:

session
Session Support  enabled 
Registered save handlers  files user 

Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter no value nocache
session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path no value /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.name ASPSESSIONIDMWMW PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /tmp /tmp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid Off Off
Avatar billede htm Nybegynder
27. marts 2004 - 12:04 #9
Hmmm - fandt lige dette på php.net - kan se at du har Apache og Mod_SSL så det kan være... Prøv og ændr det i php.ini hvis det er din egen server.

<snip>
If you have problem to download a file from your PHP , and you have IE (any version) and apache for server with SSL, check the reference of: session-cache-limiter

My best solution is change the php.ini from

session.cache_limiter = nocache
to:
session.cache_limiter = private, must-revalidate
</snip>
Avatar billede morw Nybegynder
27. marts 2004 - 12:13 #10
ini_set("session.cache_limiter", "private, must-revalidate");

Ser ud til at slette det så ingen cache settings bliver sat
Avatar billede morw Nybegynder
27. marts 2004 - 12:16 #11
Hvordan er du nu jeg ændre denne header:

Server    Apache/1.3.28 (Unix) mod_ssl/2.8.15 OpenSSL/0.9.7a
Avatar billede htm Nybegynder
27. marts 2004 - 12:22 #12
Har du mulighed for at sætte det i php.ini ? og ikke ine_set. ine_set ændrer kun for det aktuelle dokument.

Hvorfor vil du ændre den? Det vil ikke ændre på situationen med mindre du afinstallerer ssl
Avatar billede htm Nybegynder
27. marts 2004 - 12:37 #13
Avatar billede morw Nybegynder
27. marts 2004 - 12:58 #14
Tanken var at der er noget i de headers der fucker ie:

Jeg har ny prøvet på en anden af vores servere hvor det virker:

De headers er næsten ens - fatter det ikke.

ok
(Response Status)    HTTP/1.1 200 OK
Cache-Control    no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection    Keep-Alive
Content-Type    text/html
Date    Sat, 27 Mar 2004 11:53:48 GMT
Expires    Thu, 19 Nov 1981 08:52:00 GMT
Keep-Alive    timeout=15, max=99
Pragma    no-cache
Server    Apache/1.3.29 (Unix) PHP/4.3.4 mod_ssl/2.8.16 OpenSSL/0.9.7c
Set-Cookie    PHPSESSID=0133d4097328fd6625158a7fa8431120; path=/
Transfer-Encoding    chunked
X-Powered-By    PHP/4.3.4


fejl
(Response Status)    HTTP/1.1 200 OK
Cache-Control    no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection    Keep-Alive
Content-Type    text/html
Date    Sat, 27 Mar 2004 11:56:26 GMT
Expires    Thu, 19 Nov 1981 08:52:00 GMT
Keep-Alive    timeout=15, max=99
Pragma    no-cache
Server    Apache/1.3.28 (Unix) mod_ssl/2.8.15 OpenSSL/0.9.7a
Set-Cookie    PHPSESSID=81c412ca9198ca9089407987a0e7443c; path=/
Transfer-Encoding    chunked
X-Powered-By    PHP/4.3.4
Avatar billede htm Nybegynder
27. marts 2004 - 14:13 #15
Jeg ved ikke hvad der går galt, prøv og kig i den google søgning.

Det kan måske vøre din local value ud for session.name der går galt...
Avatar billede morw Nybegynder
27. marts 2004 - 14:43 #16
Arggg

Nu har jeg brugt en halv dag på det lorteproblem i IE go så finder jeg ud af at IE ikek vil tillade cookies hvis man har underscore i domænet.

Det er da for sygt. Fjernede lige underscore fra subdomænet og voila.


After some investigations I found it was due to Q321232 security update for Internet Explorer, which blocks all cookies sent from a server with a name containing non-allowed DNS chars, such as underscore which was the case for me.
Avatar billede morw Nybegynder
27. marts 2004 - 14:43 #17
Kom lige med et svar så du kan få lidt point.
Avatar billede htm Nybegynder
27. marts 2004 - 14:45 #18
OK det var da godt nok ikke til at vide... Men godt du fandt ud af det.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester