|
|
(22 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| Der webshop ruft externe Buchungsfunktionen, Details siehe hier [[ECommerce]].<br>
| | #redirect [[TWebShop2]] |
| Der webshop verfügt über umfassende Verwaltungs und Diagnosefunktionen, Details siehe [[WebShop.Admin]].<br>
| |
| | |
| == Den Apache-Webserver installieren ==
| |
| | |
| * aktuellste Version des Apache von http://www.apache.org downloaden.
| |
| * http://httpd.apache.org/download.cgi ->Download Adresse Stand:18.02.06
| |
| 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.
| |
| | |
| | |
| == PHP installieren ==
| |
| | |
| *PHP ist von der Seite "www.php.net" zu beziehen.
| |
| -> http://www.php.net/downloads.php -> Downloadadresse Stand: 18.02.06
| |
| *Am besten die neuste Version (in unserem Fall 5.1.2) als <u>.zip Datei</u> herunterladen (auch falls eine .exe Datei vorliegen sollte).
| |
| *Nach dem Download die Datei nach "C:\Programme\Php" entpacken.
| |
| | |
| Die Datei "C:\Programme\Php\php.ini-dist" oder besser "C:\Programme\Php\php.ini-recommended"
| |
| wird ins "Windows"-Verzeichnis kopiert und <u>in "php.ini" umbenannt</u>.
| |
| ->Wird ein Apache 2.0.x Server benutzt, müssen keine Dateien kopiert werden, sondern der Pfad zur ini-Datei kann dem Apache in dessen conf-Datei angegeben werden,-> siehe nächstes Kapitel
| |
|
| |
| <u>Fraglich, BITTE PRÜFEN</u>: Ausserdem muss "register_argc_argv = On" gesetzt werden. Dies ist in der "php.ini-recommended" auf "Off" gesetzt, um die Performance zu verbessern.
| |
| | |
| !!Fertig!!
| |
| | |
| *Weitere Informationen zur Installation von PHP stehen in der Datei "C:\Programme\Php\install.txt".
| |
| | |
| == Apache & PHP konfigurieren ==
| |
| | |
| Nach der Installation der Apache Software ist Startmen?in Verzeichnis reicher.
| |
| Dort kann man unter anderem die Apache-Konfigurations Datei "httpd.conf" editieren.
| |
| 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.
| |
| | |
| Das sollte f?ste reichen. Jedoch lassen sich in dieser Datei noch wesentlich mehr Funktionen
| |
| einstellen, was zu erkl䲥n ?en Umfang dieses HowTos hinausgehen w? Die einzelnen Eintr䧥 sind in englisch kommentiert und erkl䲥n sich somit (fast) von selbst.
| |
| | |
| Angenommen PHP ist auf dem Rechner im Verzeichnis "C:\Programme\Php" installiert (siehe vorheriges Kapitel).
| |
| Jetzt wird ?as Startmen?Apache-Konfigurations-Datei "httpd.conf" im Editor (Notepad) ge?et und
| |
| ans Ende oder unter eine Stelle mit 䨮lichen Eintr䧥n werden folgende drei Zeilen eingef?
| |
| | |
| PHP5:
| |
| LoadModule php5_module "c:/php/php5apache.dll"
| |
| AddType application/x-httpd-php .php
| |
| # configure the path to php.ini
| |
| PHPIniDir "C:/Programme/Php"
| |
| | |
| Eventuell ist es m?ch, dass die mittlere Zeile ("AddModule...") schon an anderer Stelle in der Datei steht,
| |
| dann muss sie nicht mehr eingef?rden oder kann mit einem "#"-Zeichen als Kommentar unsch䤬ich gemacht werden.
| |
| | |
| Falls ein Apache 2.0.x-Server benutzt wird muss in der ersten Zeile anstelle von "php{Version}apache.dll" der
| |
| Dateiname "php{Version}apache2.dll" stehen.
| |
| | |
| Nach diesen Įderungen 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䨲end der Apache Server l䵦t.
| |
| Dann wird eine Seite mit allen PHP-Informationen angezeigt. Auch der Pfad in dem PHP die "php.ini" erwartet.
| |
| Sollte dieser sich von dem im vorigen Kapitel angegebenen Windows-Verzeichnis unterscheiden, sollte die Ini
| |
| dorthin verschoben werden.
| |
| | |
| Weitere Informationen zur Installation von PHP stehen in der Datei "C:\Programme\Php\install.txt".
| |
| | |
| == PHP & firebird, interbase.so compilieren ==
| |
| | |
| [[Linux.firebird]] | |
| | |
| == Interbase-Extension f? laden ==
| |
| | |
| Damit PHP auf Interbase/Firebird Datenbanken zugreifen kann, m?die Routinen, die das erm?chen, beim
| |
| Start von PHP als Erweiterung geladen werden. Dies geschieht mit Hilfe zweier Eintr䧥 in der "php.ini".
| |
| Erstens muss der Eintrag "extension_dir= " auf das Verzeichnis mit den Extension-Dlls gesetzt werden. Diese
| |
| befinden sich standardm䟩g im Verzeichnis "extensions". Falls PHP zum Beispiel in "C:\Programme\Php" installiert
| |
| wurde, liegen die Erweiterungs-Dlls im Verzeichnis "C:\Programme\Php\extensions".
| |
| Der Eintrag in der "php.ini" lautet dann:
| |
|
| |
| <u>Win32</u>
| |
| extension_dir = "C:\Programme\Php\extensions"
| |
| <u>Linux</u>
| |
| extension_dir = "/usr/lib/php/extension"
| |
| | |
| Zweitens gibt es in der "php.ini" einen Abschnitt, der sich "Dynamic Extensions" nennt. Dort sind alle Erweiterungen in der Form ";extension=php_....dll" aufgef?Da ein Semikolon am Anfang steht, beachtet PHP diese Zeile nicht als Eintrag sondern als Kommentar. In der Zeile ";extension=php_interbase.dll" muss dieses Semikolon nun entfernt werden.
| |
| | |
| <u>Win32</u>
| |
| extension=php_interbase.dll
| |
| <u>Linux</u>
| |
| extension=interbase.so
| |
| | |
| Der WebShop erfordert, dass Timestamps im richtigen Format ?ben werden. Dies geschieht durch folgende zwei Zeilen, die am besten ans Ende der "php.ini" gestellt werden:
| |
|
| |
| [Interbase]
| |
| ibase.timestampformat=%m-%d-%Y %H:%M:%S
| |
| | |
| Jetzt sollten die PHP-Routinen f? Interbase-Anbindung zur Verf?stehen. Falls dies nicht so ist, liegt es vielleicht daran, das die "php.ini" im falschen Verzeichnis liegt (L?g siehe Ende vorletztes Kapitel) oder der Pfad im Eintrag "extension_dir=" falsch gesetzt ist.
| |
| | |
| == Session Verzeichnis ==
| |
|
| |
| Verzeichnis namens "Sess" in C:\Programme\Apache Group\Apache\" oder im selben Verzeichnis wie "DocumentRoot" anlegen.
| |
| In der Datei "php.ini" den Eintrag "session.save_path = " auf im ersten Falle
| |
| | |
| session.save_path = C:/Programme/Apache Group/Apache/Sess
| |
|
| |
| ab䮤ern.
| |
| | |
| | |
| == XML-Remote-Procedure-Calls f? und DELPHI/KYLIX ==
| |
| | |
| Grundsä´ºliche 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 akzeptieren und annehmen. Ansonsten ist ein Login nicht m?ch.
| |
| Die Einstellungen findet man z.B. im IE unter Extras->Internetoptionen->Datenschutz
| |
| Hier sollte die Stufe "Mittel" eingestellt sein.
| |