PhPepperShop bei Strato für Dummies ;-)

Installation vom PHPeppershop bei Strato.
Dieser Anleitung ist auf dem Stand vom 21.06.2003. Zu diesem Zeitpunkt wird bei Strato die MySql-Version 3.22.32 verwendet, was einige manuelle Änderungen erfordert. Diese Anleitung hat mich ca. 20 Stunden Arbeit gekostet und ist mit viel Sorgfalt entstanden. Trotzdem übernehme
ich keine Garantie für Richtigkeit oder Vollständigkeit.

1. Anlegen der Mysql-Datenbank in der Verwaltung von Strato. Datenbanknamen und Passwort notieren.

2. Zur vereinfachten Datenbankverwaltung das Programm PhpMyAdmin in der Version 2.5.1 herunterladen und in ein Verzeichnis bei Strato kopieren.

3. Nun dieses Verzeichnis mittels einer .htaccess schützen und im Browser mittels dem Stratoscript [www.xxxxxxxxx.de] (xxxxxxxxx durch ihren Domainnamen ersetzen) die Passwörter
vergeben. (bei dem ersten Aufruf des Scriptes ist das Passwort "Administrator". ACHTUNG, mit dem Befehl "htpasswd" scheint die Passwortvergabe via Telnet bei Strato nicht zu funktionieren.)

4. Nachdem das Verzeichnis von PhpMyAdmin nun geschützt ist, die Datei "config.inc.php" aus dem PhpMyAdmin-Verzeichnis wie folgt anpassen:

$cfg['PmaAbsoluteUri'] = 'http://www.xxxxxxxx.de/yyyyyyyy/';
Bitte xxxxx mit ihrem Domainname und yyyyyyyy mit dem Namen ihres PhpMyAdmin-Verzeichnisses ersetzen.

$cfg['Servers'][$i]['host'] = 'rdbms.strato.de'; // MySQL hostname
Hier bitte das rdbms.strato.de einfügen.

$cfg['Servers'][$i]['user'] = 'www.xxxxxxx.de'; // MySQL user
Hier bitte den Benutzername für die Datenbak angeben

$cfg['Servers'][$i]['password'] = 'passwd'; // MySQL password
Hier bitte das Passwort für den Datenbankzugang angeben.

$cfg['Servers'][$i]['only_db'] = 'DBxxxxx'; // If set to a db-name, only
Hier den Namen der Datenbank angeben.

Alle anderen Werte unverändert belassen und die Datei speichern und ggfls. auf den Server übertragen.

Danach sollte die Datenbankadministration unter [www.xxxxxxxxx.de] erreichbar sein
wobei xxxxxxxx wieder ihr Domainname und yyyyyyyy wieder das PhpMyAdmin-Verzeichnis ist.

PhpMyAdmin ist eine Benutzeroberfläche für MySQL welche es ermöglicht die Datenbank komfortabel aus dem Browser heraus zu bedienen. Sie ist zwar nicht zwingend nötig, verbessert jedoch die Übersichtlichkeit erheblich.

5. Bevor Sie den PhPepperShop nun auf den Webserver übertragen, müssen sie in der Datei config.pl folgende Änderung durchführen:
if ($dbadmin !~ /^([^ \n\t]{4,16}$)/){
auf
if ($dbadmin !~ /^([^ \n\t]{4,40}$)/){
ändern da Strato als Datenbank-User den Domainnamen verwendet und dieser Name oftmals mehr als 16 Zeichen hat.

Nun den PhPepperShop auf den Server übertragen und dort mittels Telnet installieren. Dazu das Script "config.pl" mit der Anweisung perl ./config.pl aus dem PhPepperShop-Verzeichnis ausführen.


Name der Shop-Datenbank (wird auch in der Shop-URL stehen):
// hier nun den Namen der Datenbank eintragen (DBxxxxx), welcher von Strato vorgegeben ist.


Datenbank Hostname: // Hier unbedingt localhost eingeben sonst gibt es ne Fehlermeldung und das Script bricht ab.

Ein MySQL Monitor wurde unter gefunden, wollen Sie diesen benutzen?
(Empfohlen: ja, j/n): //Hier ein "j" eingeben.

Ein oder zwei Datenbank-User benutzen? (1|2): Hier eine "1" eingeben.

Soll der User von den Skripten automatisch erzeugt/gelöscht werden?
Wenn sie keinen Datenbank-User anlegen duerfen waehlen sie n, ebenfalls wenn der User schon existiert, geben sie n für nein ein, ansonsten ein j: (j|n): // hier ein "n" eingeben.


MySQL Admin Loginname: // Hier nun den Usernamen für ihre Datenbank eingeben (entspricht dem Domainnamen).

Danach das Passwort für die Datenbank eingeben.

Alle weiteren Meldungen mit "Return" bestätigen bis folgende Ausgabe erscheint:

Soll versucht werden, die DBxxxxx-Datenbank ins MySQL-DBMS einzufuegen
(wenn sie schon existiert,werden nur die Tabellen eingefuegt)? (j|n):
// hier ein "n" eintragen und mit Return bestätigen.

Danach endet das Script und die automatische Installation ist erst einmal abgeschlossen.

ACHTUNG, DAS SCRIPT PATCHT IN DIVERSE DATEIEN VOM SHOP. ALLE FOLGENDEN ÄNDERUNGEN UNBEDINGT AUF DEM SERVER MACHEN ODER AUS DEM DBxxxxx-VERZEICHNIS RUNTERLADEN. NICHT DIE AUSGELIEFERTEN DATEIEN VERWENDEN.

6. Nun müsste auf ihrem Webserver ein neues Verzeichnis mit dem Namen der Datenbank existieren. Das Verzeichnis mit der Installationsversion von PhPepperShop kann nun wieder gelöscht werden.

Nun in das Verzeichnis DBxxxxx/database wechseln und dort in der Datei DBxxxxx_create.sql die Zeile "CREATE DATABASE IF NOT EXISTS DBxxxxx"
entfernen.

Ferner nach 'SSL' suchen (kommt 1x vor). Dort die beiden Hochkommas entfernen, also in SSL ändern.

Die Datei speichern.

7. Via Telnet in das Verzeichnis DBxxxxx/database wechseln und folgende Anweisung ausführen:

mysql -u www.xxxxxxxx.de -p -h rdbms.strato.de < DBxxxxx_create.sql (xxxxxxx = Domainname DBxxxxxx = Datenbankname).

Nun kommt die Abfrage des Datenbankpasswortes. Danach werden die Tabellen vollständig angelegt.

8. Nun die Datei DBxxxxx_insert.sql in die Datenbank einspielen.
Dazu vor dem ersten Statement die Anweisung "use DBxxxxx; einfügen wobei DBxxxxx dem Datenbanknamen entspricht.
Auch hier nach 'SSL' suchen (kommt 2x vor und da die beiden Hochkommas entfernen also in SSL ändern.

Diese Datei mit folgender Anweisung verarbeiten:

mysql -u www.xxxxxxxx.de -p -h rdbms.strato.de < DBxxxxx_insert.sql (xxxxxxx = Domainname DBxxxxxx = Datenbankname).

Nun kommt die Abfrage des Datenbankpasswortes. Danach werden die Tabellen vollständig gefüllt.

9. In der Datei DBxxxxx_del_tables ebenfalls die Anweisung use DBxxxxx vor die erste Anweisung schreiben.


10. In dem Verzeichnis DBxxxxx/shop die Datei initialize.php wie folgt anpassen:

// Connect to mysql database
$Database = new TMySQLDatabase
("localhost", "DBxxxxx", "www.xxxxxxx.de", 'passwd');
in
// Connect to mysql database
$Database = new TMySQLDatabase
("rdbms.strato.de", "DBxxxxx", "www.xxxxxxx.de", 'passwd');
ändern.

Die gleiche Änderung muss auch in der Datei DBxxxxx/shop/Admin/ADMIN_initialize.php und in der ADMIN_backup.php durchgeführt werden.

11. Nun sollte der Shop unter [www.xxxxxxxx.de] erreichbar sein.

12. Unbedingt die Berechtigungen für die Verzeichnisse setzen (siehe PhPepperShop Dokumentation).

13. In's nächste Weingeschäft gehen und nen leckeren Barolo kaufen. Diesen als Anlage an Stephan@Rahlmeyer.com schicken.

Viel Erfolg ;-)
Hallo Stephan,

ich habe deinen Thread in die FAQs übernommen.

Vielen herzlichen Dank für deine Mithilfe :-)

Gruss

José



=====================
Entwickler PepperShop
=====================
Anmerkung:

>>Name der Shop-Datenbank (wird auch in der Shop-URL stehen):
>>// hier nun den Namen der Datenbank eintragen (DBxxxxx), welcher von
>>Strato vorgegeben ist.

Dieser Name kann und sollte natürlich nach belieben abgeändert werden.
hab da noch nen kleines problem:

nachdem ich mich genau an deine anleitung gehalten habe, bekomme ich trotzdem eine fehlermeldung und richtig funktioniern will der shop auch noch nicht.

betrifft deinen punkt 7 --> nach dem hochladen der *_create.sql-datei wird folgende meldung ausgegeben: ERROR 1050 at line 66: Table 'artikel' alredy exists.

zu deinem punkt 8 --> nach dem hochladen der *.insert.sql-datei erscheint folgender fehler: ERROR 1046 at line 56: No Database Selected.

ausserdem kann ich mit deiner anweisung "vor ... erstem statement ... anweisung "use DBxxx;" einfügen" nicht so recht was anfangen.

das bisher fertige shopergebniss kannst du anschauen unter sportnet-erfurt.de/db61618/

für deine antwort und hilfe danke ich schon mal jetzt.

gruß andy
Hallo Andreas,

wenn du die create beziehungsweise insert scripts einmal laufen lassen hast und das nochmals versuchst erhälst du diese Fehlermeldungen.

Gruss

José



=====================
Entwickler PepperShop
=====================
also sollte das nicht das problem sein - :-)

aber wieso funktioniert der shop dann trotzdem nicht???


oben erscheinen diese meldung:


Warning: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 247

Warning: MySQL Connection Failed: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 247

Warning: Supplied argument is not a valid MySQL-Link resource in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 252

Warning: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 281

Warning: MySQL Connection Failed: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 281

Warning: MySQL: A link to the server could not be established in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 281
db: Query failed. Query was: SELECT Name FROM shop_settings
MySQL Fehlermeldung: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

U_A_H_Error: Fehler beim auslesen des Shopnamens


und am linken rand diese:


Warning: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 247

Warning: MySQL Connection Failed: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 247

Warning: Supplied argument is not a valid MySQL-Link resource in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 252

Warning: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 281

Warning: MySQL Connection Failed: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 281

Warning: MySQL: A link to the server could not be established in /mnt/ls6/04/050/00000013/htdocs/DB61618/shop/database.php on line 281
db: Query failed. Query was: SELECT Kategorie_ID, Name, Positions_Nr, Beschreibung, Bild_gross, Bild_klein, Bildtyp, Bild_last_modified, MwSt_Satz FROM kategorien WHERE Unterkategorie_von is NULL ORDER BY Positions_Nr,Name
MySQL Fehlermeldung: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
U_A_H_Error: RS ist kein Objekt (getallKategorien_RS)
Hallo Andreas,

irgendwas hast du wohl noch vergessen...

Lösche doch nochmals alle Tabellen, welche vom PhPepperShop angelegt wurden und lese die beiden Scripts nochmals ein - es sollten dann keine Fehler mehr auftreten.

Um alle Tabellen zu löschen einfach das Script ...del_tables_only.sql im gleichen Unterverzeichnis ausführen.

Gruss

José



=====================
Entwickler PepperShop
=====================
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicken Sie hier, um sich einzuloggen