TWebShop2: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 150: Zeile 150:


'''Kontrolle, ob der Mozilla die Cookies akzeptiert:''' Extras->Einstellungen->Reiter "Datenschutz"->Cookies anzeigen->Als Suchbegriff "hebu" eintragen->Es müssen 2 Cookies angezeigt werden->"c_user" und "PHPSESID" mit der Gültigkeit "c_user"=24 h und "PHPSESSID"=Bis zum Ende der Sitzung.<br>
'''Kontrolle, ob der Mozilla die Cookies akzeptiert:''' Extras->Einstellungen->Reiter "Datenschutz"->Cookies anzeigen->Als Suchbegriff "hebu" eintragen->Es müssen 2 Cookies angezeigt werden->"c_user" und "PHPSESID" mit der Gültigkeit "c_user"=24 h und "PHPSESSID"=Bis zum Ende der Sitzung.<br>
== Installation ==
'''Auf dem Linux-Apache2-Server'''
* Einen smb-Share auf \srv\www\ legen
* Über Windows das .exe ausführen, z.B. in das Verzeichnis "neu"
<code>
<?php
define("TWEBSHOP_ID","02");
define("TWEBSHOP_TITLE","Neu WebShop");
define("XMLRPC_HOST","192.168.100.180");
define("XMLRPC_PORT","3049");
define("EMAIL_ADMIN","a.knam@hebu-music.de");
include_once("i_default_config.inc.php5");
?>
</code>


== connections.php.inc ==
== connections.php.inc ==

Version vom 2. Dezember 2007, 14:50 Uhr


Kontext Links von Aussen

Kontext-Links von aussen : der OrgaMon/ein Mailung ruft den WebShop, dafür gab es bisher folgende Standards, die gehen alle nicht mehr:

BEDEUTUNG             BISHER                                             NEU
Such-Anfrage          web_search.php?expression=~SuchStr~                ?site=search&action=search_user_expression&f_search_expression=henn
Login                 login.php?email=~eMail~&key=~Password~&login=      ?site=login&action=login&f_user=thorsten.schroff@orgamon.org&f_pass=nase
Pwd-Anforderung       new_user_password.php?email=&reg=+++Ok+++          ?action=send_password&f_user=thorsten.schroff@orgamon.org
Artikel-Anzeige       <war nicht möglich>                                ?site=article&id=192713
Verfügbarkeits-Check  <war nicht möglich>                                ?site=test&info=

TWebShop 1

Der Webshop ruft externe Buchungsfunktionen, Details siehe hier ECommerce.
Der Webshop verfügt über umfassende Verwaltungs und Diagnosefunktionen, Details siehe WebShop.Admin.

Den Apache-Webserver installieren

Verwendete diesen Link vom apache 2.0 , da von 2.2 anscheinend noch keine Version für Windows vorliegt: http://apache.easy-webs.de/httpd/binaries/win32/apache_2.0.55-win32-x86-no_ssl.msi

  • Download auf dem Desktop speichern und ausführen.
   ->bei Installation Standarteinstellungen verwenden
   ->der Apache-Webserver sollte jetzt funktionsfähig sein 
 -der Apache-Webserver stellt die Anfrage an den Computer, dass andere Rechner auf diesen
  zugreifen können. Dies wird von der Windows-Firewall möglicherweise verhindert, worüber man
  auch informiert wird. Diese Nachricht beantworte man mit "nicht blocken", damit der Apache-
  Webserver voll funktionsfähig ist.  
  • zum Test ob der Apache-Webserver funktioniert, einfach im Internetexplorer "localhost" ein geben. Wenn der Server funktioniert, erscheint der Schriftzug:"Es klappt! Der Apache-Webserver ist auf dieser Website installiert.

Apache konfigurieren

  • Nach der Installation der Apache Software ist das Startmenü um einen Eintrag reicher.
 ->Dort kann man unter anderem die Apache-Konfigurations Datei "httpd.conf" editieren.
 ->die "httpd.conf"-Datei ist unter "Startmenü\Alle Programme\Apache HTTP Server(z.B.)2.0.55   \Configure Apache Server" zu finden.
  • den Eintrag "DocumentRoot=" sollte man auf das Verzeichnis setzen in dem die "index.html"

oder eine andere Index-Datei der Homepage liegt, die geservt werden soll.

 ->den Eintrag <Directory= > sollte man auf das gleiche Verzeichnis setzen.
  • Wir nehmen an, dass PHP auf dem Rechner im Verzeichnis "C:\Programme\PHP" installiert ist (siehe vorheriges Kapitel).
  • Jetzt wird die Apache-Konfigurations-Datei "httpd.conf" im Editor (Notepad) geöffet und

ans Ende werden(für PHP5) diese drei Zeilen eingefügt:

LoadModule php5_module "c:/programme/PHP/php5apache2.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/Programme/PHP"

Nach diesen Änderungen sollte PHP unter Apache laufen. Ob PHP funktioniert, sieht man, wenn man das im Anhang vorhandene Skript "phpinfo.php" aus dem Browser (nicht per Doppelklick) aufruft, während der Apache Server läuft. Dann wird eine Seite mit allen PHP-Informationen angezeigt. Auch der Pfad in dem PHP die "php.ini" erwartet.

  • Weitere Informationen zur Installation von PHP stehen in der Datei "C:\Programme\PHP\install.txt".

Icon des Shops

Ausführliche Infos gibts dazu in "http://www.favicons.de/"

XML-Remote-Procedure-Calls und DELPHI/KYLIX

  Grundsätzliche Infos zu xml-rpc: http://www.xmlrpc.com
  
  a) Aus dem Anhang die php-xmlrpc.zip entpacken und die Datei "xmlrpc.inc" ins 
     Webverzeichnis unter "xmlrpc.inc.php" abspeichern.
  b) Link zum Download der Delphi/Kylix Komponente xml-rpc: http://www.codepunk.com/


Virtual Hosts unter Confixx Webserver

joe /etc/httpd/confixx_vhosts.conf

die entsprechende php direktive open_basedir muss auskommentiert werden.

#php_admin_value open_basedir ...

Verzeichnisschutz für den Admin-Bereich

Der Admin-Bereich des TWebShops sollte geschützt sein.

Dazu liefert TWebShop ab Rev 1.074 die nötigen Dateien:

 .htaccess
 .htpasswd

Diese müssen nun noch angepasst werden.

Inhalt .htaccess:

 AuthType Basic
 AuthName "Zugang zum WebShop-Admin-Bereich" 
 AuthUserFile "/srv/www/htdocs/twebshop/admin/.htpasswd"
 require user admin

In der Datei .htaccess muss eventuell der Pfad zur Datei .htpasswd (AuthUserFile) korrigiert werden. Wichtig dabei ist, dass der Pfad in Anführungszeichen steht. Bei Bedarf kann auch der Username (admin) geändert werden.

Das Passwort befindet sich mit dem zugehörigen Usernamen in der Datei .htpasswd. Es lautet standardmäßig "xxxx".

Dieses muss zur Sicherheit in jedem Fall geändert werden. Die mitgelieferte Datei .htpasswd sollte also nicht unverändert benutzt werden und ist als reine Testmöglichkeit zur korrekten Funktion des Verzeichnisschutzes anzusehen. Zum Neuerstellen der Datei liefert Apache unter Windows das Helferlein "htpasswd.exe."

 \Apache2\bin\htpasswd.exe

Dieses erstellt über folgenden Befehl in der Eingabezeile eine neue .htpasswd Datei.

 htpasswd.exe -cb .htpasswd user passwort

Hierbei "user" durch den Benutzernamen (z.B. admin) und "passwort" durch das neue Passwort ersetzt werden.

Beide .ht* Dateien werden im "/twebshop/admin"-Verzeichnis des TWebShops abgelegt.

Nun muss noch die Datei httpd.conf (Windows) bzw. die Datei default-server.conf (Linux) angepasst werden.

Die Dateien sind zu finden unter (bei Standardinstallation des Apache2):

 Windows: C:\Programme\Apache Group\Apache2\conf\httpd.conf
 Linux:   /etc/apache2/default-server.conf

Darin muss beim <Directory> Eintrag zum DocumentRoot-Verzeichnis des Apache eine Änderung der Direktive AllowOverride vorgenommen werden. Nach "AllowOverride" sollte "All" oder besser noch "AuthConfig" stehen.

 <Directory "/srv/www/htdocs">
   ...
   AllowOverride AuthConfig
   ...
 </Directory>

Fertig !!

Anmerkung für Perfektionisten:

Besser noch wäre für das "/admin"-Verzeichnis einen separaten <Directory> Eintrag vorzunehmen:

 <Directory "/srv/www/htdocs/twebshop/admin">
   ...
   AllowOverride AuthConfig
   ...
 </Directory>

Dies hat den Vorteil, das Apache nicht in jedem Unterverzeichnis seiner DocumentRoot nach vorhandenen .htaccess Dateien sucht, sondern nur im "/twebshop/admin"-Verzeichnis, was unnötigen Aufwand spart.

Systemanforderungen beim Benutzer/Client

Der benutzte Browser muss Cookies annehmen und speichern. Das heisst es wird dem Browser im Moment des Login eine eindeutige Zeichenfolge übermittelt die Sie während einer Anmeldung immer als den gleichen Benutzer ausweist. Diese Cookies sind keine schädlichen Viren oder ähnliches und können problemlos aktiviert werden.

  • Internet Explorer

Extras->Internetoptionen->Datenschutz: Hier sollte die Stufe "Mittel" eingestellt sein.

  • Mozilla Firefox

Starten Sie den Firefox
Wählen Sie das Menü - Extras - Einstellungen
Dann den Reiter "Datenschutz" - Cookies
Dort setzten Sie den haken "Cookies akzeptieren"

Kontrolle, ob der Mozilla die Cookies akzeptiert: Extras->Einstellungen->Reiter "Datenschutz"->Cookies anzeigen->Als Suchbegriff "hebu" eintragen->Es müssen 2 Cookies angezeigt werden->"c_user" und "PHPSESID" mit der Gültigkeit "c_user"=24 h und "PHPSESSID"=Bis zum Ende der Sitzung.

Installation

Auf dem Linux-Apache2-Server

  • Einen smb-Share auf \srv\www\ legen
  • Über Windows das .exe ausführen, z.B. in das Verzeichnis "neu"

<?php

define("TWEBSHOP_ID","02"); define("TWEBSHOP_TITLE","Neu WebShop"); define("XMLRPC_HOST","192.168.100.180"); define("XMLRPC_PORT","3049"); define("EMAIL_ADMIN","a.knam@hebu-music.de");


include_once("i_default_config.inc.php5");

?>

connections.php.inc

 # 
 # 
 define ("eMailDevelopment","phpfreak@domain.tld");
 define ("eMailWebmaster","phpfreak@domain.tld");
 define ("eMailShop","phpfreak@domain.tld");
 define ("eMailMiniScore","phpfreak@domain.tld");

der Webshop sucht die Person, die im Feld EMAIL die angegebene eMailAdresse eingetragen hat.

in der Regel benutzt der WebShop das Mail-Out System des OrgaMon. Falls es irgendwann wieder Probleme mit dem Maildienst geben sollte, der WebShop kann per Konstante (true/false) auf SMTP Mail aus eigener Kraft umgestellt werden, sofern die Zugangsdaten in der connections.inc.php korrekt sind.


todo WebShop