2
0

Zend_Session-Introduction.xml 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  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 <acronym>PHP</acronym> 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"><varname>$_SESSION</varname></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 <acronym>PHP</acronym> Arrays),
  29. implementiert sind.
  30. </para>
  31. <para>
  32. <classname>Zend_Session_Namespace</classname> Instanzen sind Zugriffsobjekte für benannte
  33. Abschnitte von <varname>$_SESSION</varname>. Die <classname>Zend_Session</classname>
  34. Komponente wrappt die bestehende <acronym>PHP</acronym> Erweiterung ext/session mit einem
  35. Administrations und Management Interface sowie einer <acronym>API</acronym> für
  36. <classname>Zend_Session_Namespace</classname> um Session Namensräume zu erlauben.
  37. <classname>Zend_Session_Namespace</classname> bietet ein standardisiertes,
  38. objektorientiertes Interface für das Arbeiten mit Namensräumen welche innerhalb von
  39. <acronym>PHP</acronym>'s Standard Session Mechanismum bereitgehalten werden. Es werden
  40. sowohl anonyme als auch authentifizierte (z.B., "login") Session Namensräume unterstützt.
  41. <classname>Zend_Auth</classname>, die Authentifizierungs-Komponente des Zend Framework
  42. verwendet <classname>Zend_Session_Namespace</classname> um einige Informationen, welche mit
  43. den authentifizierten Benutzern verbunden sind, innerhalb des "Zend_Auth" Namensraums zu
  44. speichern. Da <classname>Zend_Session</classname> intern die normalen <acronym>PHP</acronym>
  45. ext/session Funktionen verwendet, sind alle bekannten Konfigurationsoptionen und
  46. Einstellungen vorhanden (siehe <ulink
  47. url="http://www.php.net/session">http://www.php.net/session</ulink>), mit dem Bonus und
  48. Komfort durch ein Objekt-orientiertes Interface und unterstützt standardmäßig beides, sowohl
  49. die beste Lösung als auch eine reibungslose Integration innerhalb des Zend Frameworks.
  50. Deshalb hält eine standardmäßige <acronym>PHP</acronym> Session Identifizierer, welche
  51. entweder in einem Client-Cookie gespeichert oder in einer <acronym>URL</acronym> integriert
  52. ist, die Verbindung zwischen Client und bestehenden Sessiondaten aufrecht.
  53. </para>
  54. <para>
  55. Das standardmäßige
  56. <ulink url="http://www.php.net/manual/de/function.session-set-save-handler.php">ext/session
  57. Speichermodul</ulink> löst das Problem des Verwaltens dieser Verbindung unter bestimmten
  58. Bedingungen nicht, weil Session Daten am Dateisystem des Servers gespeichert werden der auf
  59. die Anfrage antwortet. Wenn eine Anfrage von einem anderen Server beantwortet wird and dem
  60. wo die Session Daten vorhanden sind, hat der antwortende Server keinen Zugriff auf die
  61. Session Daten (wenn diese nicht durch ein Netzwerk Dateisystem verfügbar sind). Eine Liste
  62. von zusätzlichen, geeigneten Speichermodule wird, sobald Sie vorhanden ist, zur Verfügung
  63. gestellt. Mitglieder der Community werden ermutigt Speichermodule vorzuschlagen und an die
  64. <ulink url="mailto:fw-auth@lists.zend.com">fw-auth@lists.zend.com</ulink> Mailing-Liste zu
  65. senden. Ein <classname>Zend_Db</classname> kompatibles Speichermodul wurde schon in der
  66. Liste veröffentlicht.
  67. </para>
  68. </sect1>