Server Variable

Apache, Lighttpd, nginx, Cherokee
native
Posts: 119
Joined: 2003-11-18 10:38

Server Variable

Post by native » 2007-04-20 00:02

ich habe auf einem Debian Server einen Apache_SSL laufen. In PHP sollte damit die Variable

Code: Select all

$_SERVER['SSL_SESSION_ID']
verfügbar sein - ist sie aber nicht.

Eine Idee, an was das liegen könnte bzw. wie ich das beheben kann?

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: Server Variable

Post by dtdesign » 2007-04-20 12:45

Hallo,

wo hast du denn diese interesante Variable her? Die kenne weder ich noch die PHP Manual ;) [1]

Versuch es doch einfach mal mit: session_id() [2]

Gruß
dtdesign

[1] http://de.php.net/manual/de/reserved.variables.php
[2] http://de.php.net/manual/de/function.session-id.php

native
Posts: 119
Joined: 2003-11-18 10:38

Re: Server Variable

Post by native » 2007-04-20 12:54

[1] aus dem PHP Manual, externer Link zu einem security advisory zur Vermeidung von session fixation attacks.
Google: http://www.google.de/search?q=%24_SERVE ... S:official
und schau Dir die entsprechenden Ausgaben von phpinfo() anschauen.

[2] *g*

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: Server Variable

Post by Roger Wilco » 2007-04-20 14:09

native wrote:ich habe auf einem Debian Server einen Apache_SSL laufen. In PHP sollte damit die Variable

Code: Select all

$_SERVER['SSL_SESSION_ID']
verfügbar sein - ist sie aber nicht.
Benutzt du tatsächlich Apache-SSL und nicht Apache 2 mit mod_ssl? Wie hast du PHP eingebunden? Als Apache-Modul oder als CGI/FastCGI?

Bei letzterem solltest du dir mal das superglobale Array $_ENV ansehen und dir den Unterschied zu $_SERVER klarmachen.
dtdesign wrote:Versuch es doch einfach mal mit: session_id()
Das ist die falsche Art von Session.

native
Posts: 119
Joined: 2003-11-18 10:38

Re: Server Variable

Post by native » 2007-04-20 14:45

Ich benutze tatsächlich Apache_SSL, und es läuft PHP 5 als FastCGI.
Bei letzterem solltest du dir mal das superglobale Array $_ENV ansehen
auch in $_ENV ist SSL_SESSION_ID nicht vorhanden.

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: Server Variable

Post by Roger Wilco » 2007-04-20 14:52

Was sagt denn folgendes kleine Skript, wenn du es auf dem Server über HTTPS aufrufst?

Code: Select all

<pre>
<?php
print_r($_ENV);
print_r($_SERVER);
?>
</pre>

native
Posts: 119
Joined: 2003-11-18 10:38

Re: Server Variable

Post by native » 2007-04-20 15:07

Code: Select all

Array
(
)
Array
(
    [SERVER_SIGNATURE] => 
Apache/1.3.33 Ben-SSL/1.55 Server at mySecureDomain.com Port 443


    [HTTP_KEEP_ALIVE] => 300
    [HTTP_USER_AGENT] => Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
    [PHPRC] => /var/www/mySecureDomain.com/conf
    [SERVER_PORT] => 443
    [HTTP_HOST] => mySecureDomain.com
    [HTTP_ACCEPT_CHARSET] => ISO-8859-1,utf-8;q=0.7,*;q=0.7
    [DOCUMENT_ROOT] => /var/www/mySecureDomain.com/pfad
    [SCRIPT_FILENAME] => /var/www/mySecureDomain .com/pfad/info.php
    [REQUEST_URI] => /pfad/info.php
    [SCRIPT_NAME] => /pfad/info.php
    [REMOTE_USER] => someUser
    [AUTH_TYPE] => Basic
    [HTTP_CONNECTION] => keep-alive
    [PHP_FCGI_CHILDREN] => 3
    [REMOTE_PORT] => 63330
    [PATH] => /usr/local/bin:/usr/bin:/bin
    [PWD] => /var/www/php-fcgi-scripts/mySecureDomain.com
    [SERVER_ADMIN] => tech@mySecureDomain.com
    [REDIRECT_STATUS] => 200
    [HTTP_ACCEPT_LANGUAGE] => en,de;q=0.7,en-gb;q=0.3
    [HTTP_ACCEPT] => text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    [REMOTE_ADDR] => 84.163.178.188
    [SHLVL] => 0
    [SERVER_NAME] => mySecureDomain.com
    [SERVER_SOFTWARE] => Apache/1.3.33 Ben-SSL/1.55 (Debian GNU/Linux) mod_fastcgi/2.4.2
    [QUERY_STRING] => 
    [SERVER_ADDR] => 85.25.53.16
    [GATEWAY_INTERFACE] => CGI/1.1
    [SERVER_PROTOCOL] => HTTP/1.1
    [HTTP_CACHE_CONTROL] => max-age=0
    [HTTP_ACCEPT_ENCODING] => gzip,deflate
    [REDIRECT_URL] => /pfad/info.php
    [REQUEST_METHOD] => GET
    [HTTP_COOKIE] => PHPSESSID=6C0kNqit8LGLGeq9,MWMy2431V5
    [ORIG_SCRIPT_FILENAME] => /var/www/php-fcgi-scripts/mySecureDomain.com/php-fcgi-starter-ssl
    [ORIG_PATH_INFO] => /pfad/info.php
    [ORIG_PATH_TRANSLATED] => /var/www/mySecureDomain.com/pfad/info.php
    [ORIG_SCRIPT_NAME] => /cgi-bin/php-fcgi-starter-ssl
    [PHP_SELF] => /pfad/info.php
    [REQUEST_TIME] => 1177074108
)

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: Server Variable

Post by Roger Wilco » 2007-04-20 15:37

Du benutzt anscheinend mod_fastcgi. Dann lies die "Notes" unter http://fastcgi.com/mod_fastcgi/docs/mod ... html#notes und informiere dich über die Direktive PassEnv unter http://httpd.apache.org/docs/1.3/mod/mod_env.html.

Die Umgebungsvariable SSL_SESSION_ID sollte dann unter $_ENV verfügbar sein.

native
Posts: 119
Joined: 2003-11-18 10:38

Re: Server Variable

Post by native » 2007-04-20 15:42

Vielen Dank.