Roland: session funktioniert nicht

Hi!

Was hat denn folgende Fehlermeldung zu bedeuten bzw. was passt nicht?

Warning: session_start() [function.session-start]: open(/home/www//tmp/sess_0e2b2fe2327bd5b77b075a4ceb690362, O_RDWR) failed: No such file or directory (2) in /home/www/[domainname]/htdocs/[dir]/config.php on line 42

In der Zeile 42 steht nur:
  session_start();
Dies ist auch das erste mal das auf eine session zugegriffen wird.

lg
Roland

  1. Hello,

    Was hat denn folgende Fehlermeldung zu bedeuten bzw. was passt nicht?

    Warning: session_start() [function.session-start]: open(/home/www//tmp/sess_0e2b2fe2327bd5b77b075a4ceb690362, O_RDWR) failed: No such file or directory (2) in /home/www/[domainname]/htdocs/[dir]/config.php on line 42

    Das hat zu bedeuten, dass in der Serverkonfiguration/PHP-Konfiguration vergessen wurde, dem PHP-Prozess Lese- UND Schreibrechte auf das "session.save_dir" zu geben.

    In einer Multihost-Umgebung sollte das Userverzeichnis z.B. folgenden Aufbau haben:

    /www/user1/htdocs              DocumentRoot des HTTP-Servers
                /data                Datenverzeichnis des Users
                /sessions            Session-Verzeichnis für den HTTP-Server/PHP-Prozess
                /tmp                 Upload und Temporär-Verzeichnis des HTTP-Server/PHP-Prozess
                /log                 Logbuch-Verzeichnis für alle Dienste, die der User nutzen darf

    damit der User seine Daten außerhalb der DocumentRoot des Webservers speichern kann.
    Gleiches sollte für die Sessions gelten. An die sollte er mit seinen Scripten schon heankommen, aber auch nur er, und kein anderer User...

    Dein PHP-Prozess durfte nun in besagtem Session-Verzeichnis, wo auch immer das liegen mag bei Dir, nicht schreiben, und konnte daher keine Session-Datei anlegen und daher auch die Session nicht starten.

    Ein harzliches Glückauf

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. hi,

      Warning: session_start() [function.session-start]: open(/home/www//tmp/sess_0e2b2fe2327bd5b77b075a4ceb690362, O_RDWR) failed: No such file or directory (2) in /home/www/[domainname]/htdocs/[dir]/config.php on line 42

      Dein PHP-Prozess durfte nun in besagtem Session-Verzeichnis, wo auch immer das liegen mag bei Dir, nicht schreiben, und konnte daher keine Session-Datei anlegen und daher auch die Session nicht starten.

      Nur aus neugier, muss session_start nicht ganz oben in der Datei stehen, damit es funktioniert?

      grüße

      1. echo $begrüßung;

        Nur aus neugier, muss session_start nicht ganz oben in der Datei stehen, damit es funktioniert?

        Nein, muss nicht. Ganz oben muss <?php stehen. Danach kann beliebiger Code kommen, der keinerlei Ausgabe erzeugt, damit ein irgendwann auftauchendes session_start() oder auch andere Header-modifizierende Funktionen erfolgreich ausgeführt werden können.

        echo "$verabschiedung $name";

        1. hi,

          Danke allen für die hinweise, dann wäre das endlich auch verstanden.

          grüße

      2. nö, es darf davor nur keine Ausgabe stattfinden (damit der header noch gesendet werden kann).

        lg
        Roland

      3. Hello,

        Nur aus neugier, muss session_start nicht ganz oben in der Datei stehen, damit es funktioniert?

        Nein, es kann fast stehen, wo es Dir gefällt. Es darf nur der Datentranfer zum Client nicht eher begonnen werden, als alle Header (und session_start() möchte auch welche setzen) eingesammelt sind.

        Mit dem ersten Datenbyte sendet PHP auch die gesammelten Header _vorher_ ab und dann wäre es zu spät, noch welche hinzuzufügen, weil sie beim Client ja dann nicht mehr als Header sondern im Body ankämen.

        Ein harzliches Glückauf

        Tom vom Berg

        --
        Nur selber lernen macht schlau
        http://bergpost.annerschbarrich.de
    2. Was genau muss ich da also umstellen?

      Danke
      Roland

      1. danke, habs dem Admin gesagt und funktioniert jetzt :)

        lg
        Roland

  2. Mahlzeit,

    Was hat denn folgende Fehlermeldung zu bedeuten bzw. was passt nicht?

    Warning: session_start() [function.session-start]: open(/home/www//tmp/sess_0e2b2fe2327bd5b77b075a4ceb690362, O_RDWR) failed:

    Meinst Du nicht, dass der Pfad "/home/www//tmp/sess_0e2b2fe2327bd5b77b075a4ceb690362" etwas merkwürdig aussieht?

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|