Zend_Session-Introduction.xml 4.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15603 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.session.introduction">
  5. <title>Einführung</title>
  6. <para>
  7. Das Zend Framework Auth Team begrüsst Feedback und Beiträge in der Mailing Liste:
  8. <ulink url="mailto:fw-auth@lists.zend.com">fw-auth@lists.zend.com</ulink>
  9. </para>
  10. <para>
  11. In Web Anwendungen die mit PHP geschrieben sind, repräsentiert eine
  12. <emphasis>Session</emphasis> eine logische Eins-zu-Eins Verbindung zwischen fixen Daten auf
  13. dem Server und einem bestimmten Benutzer Client (z.B., einem Web Browser).
  14. <classname>Zend_Session</classname> hilft beim Verwalten und Aufbewahren von Session Daten,
  15. einer logischen Verbindung von Cookie Daten über mehrere Seitenaufrufe hinweg durch den
  16. gleichen Client. Anders als Cookie Daten, werden Session Daten nicht beim Client gespeichert
  17. und stehen diesem nur dann zur Verfügung wenn der Server-seitige Sourcecode diese Daten
  18. freiwillig zur Verfügung stellt und diese vom Client angefragt werden. Innerhalb dieser
  19. Komponente und der Dokumentation bezeichnt der Term "Session Daten" die Server-seitigen
  20. Daten welche in <ulink
  21. url="http://www.php.net/manual/de/reserved.variables.php#reserved.variables.session"><code>$_SESSION[]</code></ulink>
  22. gespeichert, durch <classname>Zend_Session</classname> verwaltet und durch
  23. <classname>Zend_Session_Namespace</classname> Zugriffsobjekte individuell verändert werden.
  24. <emphasis>Session Namensräume</emphasis> gestatten den Zugriff auf Session Daten
  25. durch Verwendung klassischer <ulink
  26. url="http://en.wikipedia.org/wiki/Namespace_%28computer_science%29">Namensräume</ulink>
  27. welche durch logische, namentlich gruppierte, assoziative Arrays, dessen Schlüssel mit
  28. Zeichenketten benannt sind (ähnlich wie bei normalen PHP Arrays), implementiert sind.
  29. </para>
  30. <para>
  31. <classname>Zend_Session_Namespace</classname> Instanzen sind Zugriffsobjekte für benannte
  32. Abschnitte von <code>$_SESSION[]</code>. Die <classname>Zend_Session</classname> Komponente
  33. wrappt die bestehende PHP Erweiterung ext/session mit einem Administrations und Management
  34. Interface sowie einer API für <classname>Zend_Session_Namespace</classname> um Session
  35. Namensräume zu erlauben. <classname>Zend_Session_Namespace</classname> bietet ein
  36. standardisiertes, objekt-orientiertes Interface für das Arbeiten mit Namensräumen welche
  37. innerhalb von PHP's Standard Session Mechanismum bereitgehalten werden. Es werden sowohl
  38. anonyme als auch authentifizierte (z.B., "login") Session Namensräume unterstützt.
  39. <classname>Zend_Auth</classname>, die Authentifizierungs-Komponente des Zend Framework
  40. verwendet <classname>Zend_Session_Namespace</classname> um einige Informationen, welche mit
  41. den authentifizierten Benutzern verbunden sind, innerhalb des "Zend_Auth" Namensraums zu
  42. speichern. Da <classname>Zend_Session</classname> intern die normalen PHP ext/session
  43. Funktionen verwendet, sind alle bekannten Konfigurationsoptionen und Einstellungen vorhanden
  44. (siehe <ulink url="http://www.php.net/session">http://www.php.net/session</ulink>), mit dem
  45. Bonus und Komfort durch ein Objekt-orientiertes Interface und unterstützt standardmäßig
  46. beides, sowohl die beste Lösung als auch eine reibungslose Integration innerhalb des Zend
  47. Frameworks. Deshalb hält eine standardmäßige PHP Session Identifizierer, welche entweder in
  48. einem Client-Cookie gespeichert oder in einer URL integriert ist, die Verbindung zwischen
  49. Client und bestehenden Sessiondaten aufrecht.
  50. </para>
  51. <para>
  52. Das standardmäßige
  53. <ulink url="http://www.php.net/manual/de/function.session-set-save-handler.php">ext/session
  54. Speichermodul</ulink> löst das Problem des Verwaltens dieser Verbindung unter bestimmten
  55. Bedingungen nicht, weil Session Daten am Dateisystem des Servers gespeichert werden der auf
  56. die Anfrage antwortet. Wenn eine Anfrage von einem anderen Server beantwortet wird and dem
  57. wo die Session Daten vorhanden sind, hat der antwortende Server keinen Zugriff auf die
  58. Session Daten (wenn diese nicht durch ein Netzwerk Dateisystem verfügbar sind). Eine Liste
  59. von zusätzlichen, geeigneten Speichermodule wird, sobald Sie vorhanden ist, zur Verfügung
  60. gestellt. Mitglieder der Community werden ermutigt Speichermodule vorzuschlagen und an die
  61. <ulink url="mailto:fw-auth@lists.zend.com">fw-auth@lists.zend.com</ulink> Mailing-Liste zu
  62. senden. Ein Zend_Db kompatibles Speichermodul wurde schon in der Liste veröffentlicht.
  63. </para>
  64. </sect1>