Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
SID's - warum ?? [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
SID's - warum ??


 
syco23
29-07-2003, 22:22 
 
Hi,

ich hab auf einer kleinen Seiten ein paar includes (footer und counter). Warum wird dort immer wieder an die Links eine SID angehängt? Ich durchschau das ganze nicht, v.a. weil die sids auf in den html Quelltext kommen, und weil die Sids nicht immer angehängt werden.

Diesmal wäre auch ein guter Link o.k. ;)

Gruß,
Syco

 
Seikilos
29-07-2003, 23:03 
 
benuzt du vielleicht sessions? :D

 
BlobBanana
29-07-2003, 23:40 
 
Die SID wird normalerweise nur an den Link mit drangehaengt wenn kein Cookie gesetzt werden kann.

Allerdings hab ich es auch schon erlebt das die SID an die URL drangehaengt wird, obwohl ich Cookies akzeptiere (und zwar alle, auch von Drittanbietern) ... einen Grund dafuer konnte ich jedoch nie finden ....

 
syco23
30-07-2003, 00:50 
 
ja, ich hab allmyvisitors installiert, das nützt meines wissens nach sessions..

Aber wie gesagt, die sid kommen und gehen wie sie wollen... Und ja, ich hab auch Cookies aktiviert..

.. auf anderen domains hab ich auch allmyvisitors, aber keine subs (vielleicht liegts daran), und da hab ich keine sids..

Meine Sorge ist nur die, dass auch Google Sid's angehängt bekommt.. Google spidert nämlich schon bei Variablen-Übergabe per URL kaum und streikt bei SIDs fast schon grundsätzlich...

Gruß,
Syco, der die (php-)Welt ned ganz versteht..

 
Seikilos
30-07-2003, 12:50 
 
du kannst ja session.use_trans_sid deaktivieren, dann wird die sid nich mit drangehängt

 
goth
30-07-2003, 13:35 
 
Original geschrieben von BlobBanana
Die SID wird normalerweise nur an den Link mit drangehaengt wenn kein Cookie gesetzt werden kann.

Allerdings hab ich es auch schon erlebt das die SID an die URL drangehaengt wird, obwohl ich Cookies akzeptiere (und zwar alle, auch von Drittanbietern) ... einen Grund dafuer konnte ich jedoch nie finden ....

Das ist doch auch ein riesen Quatsch den Du da erzählst ... ob die SID angehängt wird oder nicht hängt einzig und alleine davon ab ob die trans_sid aktiviert ist oder nicht ...

... überlege doch erstmal bevor Du so einem Quatsch postest wie das PHP-Module des Apache wohl mitbekommen soll ob Du Cookies aktiviert hast oder nicht ... der Cookie wird über den Response-Header gesendet ... frühestens mit der nächsten Request ... und dem damit gesendeten Request-Header ... könnte der Server diese Information ermitteln ...

... ich möchte echt mal wissen wer diesen Unsinn in die Welt gesetzt hat ... :goth:

 
BlobBanana
30-07-2003, 14:40 
 
Original geschrieben von goth
Das ist doch auch ein riesen Quatsch den Du da erzählst ... ob die SID angehängt wird oder nicht hängt einzig und alleine davon ab ob die trans_sid aktiviert ist oder nicht ...

Das weiss ich selbst ... und quatsch ist es auch nicht, denn meistens ist trans_sid aktiviert. Daher "normalerweise" ...


... überlege doch erstmal bevor Du so einem Quatsch postest wie das PHP-Module des Apache wohl mitbekommen soll ob Du Cookies aktiviert hast oder nicht ... der Cookie wird über den Response-Header gesendet ... frühestens mit der nächsten Request ... und dem damit gesendeten Request-Header ... könnte der Server diese Information ermitteln ...

... ich möchte echt mal wissen wer diesen Unsinn in die Welt gesetzt hat ... :goth:

Ich hab nie behauptet das Apache weiss ob es ein Cookie senden kann.
Und das das erst nach dem naechsten Request ermittelt werden kann ist mir auch klar ...

Fakt ist nunmal das PHP die SID bei mir schonmal mit an die URL drangehaengt wurde obwohl Cookies erlaubt waren ... das ergibt zwar eigentlich kein Sinn aber war halt so ...

Und vereinfacht kann man sagen (natuerlich nur wenn trans_sid aktiviert ist):
Wenn Cookies beim User deaktiviert sind wird die SID an die URL mit drangehaengt ...


Also erzaehl mir mal was so gross falsch an dem was ich geschrieben hab ist?
Oder ist im Job-Forum nicht mehr soviel los und du musst hier jetzt leute anmachen?

 
Seikilos
30-07-2003, 15:16 
 
Cookies haben damit nix zutun.

Du redest sicher von Session Cookies :D:D

 
BlobBanana
30-07-2003, 15:21 
 
Hier wird jedes Wort auf die Goldwaage gelegt ;)

Dennoch muessen beim Browser Cookies aktiviert sein ... sonst-> SID an die URL (natuerlich nur wenn trans_sid aktiviert) ... ;) :)

 
Seikilos
30-07-2003, 15:23 
 
nix goldwage, ich nutz nur die möglichkeit auf anderen usern rumzuhacken :D

*scherz*
Wollt es nur mal verdeutlichen, falls es unerfahrene leser lesen sollten, sollen die Cookies=SessionCookies nicht gleich setzten

 
syco23
30-07-2003, 15:31 
 
Dann habe ich noch eine Frage: Wenn genau werden so SessionCookies versendet bzw. SID's verwendet. Ich hab da noch kein exaktes System erkennen können.

wenn ich das jetzt bei php.net richtig verstanden hab, kann ich use_trans_sid nur in der php.ini festlegen.. und darauf hab ich ja keinen Zugriff..

 
Seikilos
30-07-2003, 15:34 
 
ini_set , damit hast du zugriff, natürlich nur wenn php die rechte für die frei hat.

Ansonsten, ist trans_sid an, so wird die interne pfad routine umgeschrieben um automatisch sids an urls dranzuhängen, aber auch nur dann, wenn php merkt, dass der user keine cookies der sessions aktzeptiert

 
syco23
30-07-2003, 15:51 
 
.. hm .. scheinbar lässt sich da nicht viel machen:

http://at.php.net/manual/de/function.ini-set.php

session.use_trans_sid "1" PHP_INI_SYSTEM|PHP_INI_PERDIR

PHP_INI_PERDIR 2 Entry can be set in php.ini, .htaccess or httpd.conf
PHP_INI_SYSTEM 4 Entry can be set in php.ini or httpd.conf

Wenn ich das richtig verstanden hab, kann ich die sid's also nur per .htaccess abschalten(?) mit welcher Syntax mach ich das?

 
Seikilos
30-07-2003, 15:54 
 
mit htaccess klappts aber auch nicht zwingend

php_flag session.use_trans_sid 0

in eine htaccess datei schreiben

 
syco23
30-07-2003, 16:05 
 
o.k. danke, ich hab jetzt mal alle urls absolut angegeben, jetzt gibts keine sid's mehr :D

Was mich noch beschäftigt: ich dachte es wird nur das zwischen den php-Tags geparst. Warum wird dann die SId auch die Links im <html> Teil des Scripts angehängt..

 
Seikilos
30-07-2003, 16:07 
 
wenn du auf ne andere php script datei verweist, die auch sessions hat, so kann diese ja nicht hellsehen, die muss anhand der sid dann die passende session rausholen

 
muecke0815
30-07-2003, 16:36 
 
also damit mal klarheit geschaffen wird:

PHP weiß nicht beim erstenmal ob cookies gesetzt werden können oder nicht!
SessionCookies??? der client kann nur eine art von cookies setzten und das macht sich php mit seiner session_id zu nutze:

php.ini:
session.use_cookies = 1 # ermöglicht erst das setzen mit cookies
session.use_trans_sid = 1 # ermöglicht erst das "dranhängen" von session_id

ist also beides an wird php die urls parsen (id dranhängen) und cookie setzen! (weil er ja nicht weiß ob client cookies überhaupt zu läßt!)

ist cookie beim client erlaubt findet das dranhängen ab dem zweitenmal nicht mehr statt (jetzt weiß php bescheid!)

wenn nicht dann bleibt die URL mit sid (es wird kein cookie mehr gesetzt)


andere kombinationen könnt ihr ruhig selber ausprobieren. ist aber das einzigemal wo mal id dran sind und mal nicht. es sein denn der programmierer hat die sid selbst den urls angehängt. mit => session_id()

PS: meine meinung: php parst den fertigen html. schließlich muß es ja auch hidden felder bei formularen hinzuaddieren. das wird in cryptischem php-code sehr schwierig

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:26 Uhr.