Sven71
"myXOOPs"-Neuling
Gepostet am:05.06.2008 01:07
#4
Deine Beschreibung zur Installation des Protector ist unpräzise. Das mag ein reines Formulierungsproblem sein, evtl. ist es aber auch Ursache für die "Merkwürdigkeiten", die Du beklagt hast.
1.) Das Modul für den root path kommt wie alle Module nicht in ROOT/modules, sondern in den für das WWW offenen Bereich, bei Linux z. B. ROOT/htdocs/modules oder ROOT/web/modules .... jenachdem wie auf dem Server der Ordner benannt ist, in dem die vom WWW aus zugänglichen Dateien lagern.
Diese Dateien hat der Autor von Protector im Ordner 'html' gelagert, d. h. den Unterordner in 'html' so wie er ist hochladen.
2.) Dann muß ein Trust-Pfad definiert werden (für Anglophobe: trust = Vertrauen, thrust = Schub). Dieser Trust-Pfad darf NICHT vom WWW aus zugänglich sein, muß also außerhalb von 'htdocs' oder 'web' liegen, z. B. ROOT/schild, um bei Deinem Beispiel zu bleiben
So wie Du oben ROOT definiert hast, läge der Ordner "schild" ebenfalls in dem vom Web zugänglichen Bereich. Das ist keine korrekte Installation für Protector. Der mit dem Begriff ROOT abgekürzte Teil des Pfades darf den für das Web zugänglichen Bereich nicht mit umfassen, deshalb oben meine Erläuterung hinsichtlich ROOT/htdocs oder ROOT/web für den offenen Bereich.
Zusammenfassung bis hier:
Root-Pfad: ROOT/htdocs (hier lagert die Website)
Trust-Pfad: ROOT/schild
In den Pfad ROOT/schild muß dann alles geladen werden, was laut Protector-Anleitung in den Trust Pfad gehört. Auch hier hat der Autor die Baum-Struktur in seinem Modul Ordner bereits vorgegeben: Der Unterordner im Ordner 'xoops_trust_path' ist so wie vorgegeben nach ROOT/schild/ zu laden.
Das Ergebnis sollte so aussehen:
ROOT/htdocs/modules/protector (vorgegeben im Protector-Download: html/modules/protector)
ROOT/schild/modules/protector (vorgegeben im Protector-Download: xoops_trust_path/modules/protector)
3.) Nach der Installation von Protector muß dann die mainfile.php verändert werden:
- Ergänzung des trust path
- Ergänzung des precheck
- Ergänzung des postcheck
Ergänzung des Trust-Pfades:
Bereits vorhanden ist etwa in Zeile 34
define('XOOPS_ROOT_PATH', 'Root-Pfad');
Darunter ist zu ergänzen
define('XOOPS_TRUST_PATH', 'Trust-Pfad');
Root-Pfad als bereits vorhandener Code würde auf den offenen Web-Bereich verweisen, also ROOT/htdocs. Das könnte beispielsweise so aussehen:
define('XOOPS_ROOT_PATH', '/home/www/8ddf6wwwghe660a1f44exlv8/web');
Trust-Pfad als zu ergänzender Code wäre dann entsprechend ROOT/schild.
Natürlich steht dort nicht "ROOT", sondern der konkrete Pfad in Zeile 34, der mit Ausnahme des endständigen Webordners - hier im Beispiel 'htdocs' - für den Trust-Pfad übernommen wird. Das wiederum könnte dann so aussehen:
define('XOOPS_TRUST_PATH', '/home/www/8ddf6wwwghe660a1f44exlv8/schild');
Du hast oben geschrieben, der Trust-Pfad würde lauten:
"XOOPS_TRUST_PATH.'schild/modules/protector/include/postcheck.inc.php'"
Natürlich lautet der Trust-Pfad tatsächlich:
ROOT/schild
Die Pfade für Pre- und Postcheck ENTHALTEN zwar den Trust-Pfad, SIND aber nicht der Trust-Pfad. In Deinem Beispiel müßte der Placeholde r XOOPS_TRUST_PATH bereits den Ordner 'schild' enthalten. Bei Deinem Code käme der Ordner 'schild' dann doppelt vor:
ROOT/schild/schild/modules/protector/include/postcheck.inc.php
Und da der erste Slash in Deiner postcheck-Zeile fehlt, würde es gar so aussehen:
ROOT/schildschild/modules/protector/include/postcheck.inc.php
So kann der Protector in der Tat nicht funktionieren. Wie gesagt: Vielleicht hast Du den Code hier nur unsauber zitiert. Aber wenn das von anderen so übernommen wird, kommt kein brauchbares Ergebnis herum.
Re: Installationsanleitung für aktuelle xoops protector 3.17
05.06.2008 01:07 Zitat:
25cent schrieb:
Hallo,
Kenn nur die ältere Version. Du musst sozusagen einen Ordner definieren von wo der Protector aus "operiert", nennen wir mal den Ordner schild.
Sind ja immer zwei Ordner, der eine wird ganz normal in ROOT/modules/ installiert. Der andere Ordner (der Thrust Ordner) kommt an beliebiger Stelle, z.B. ROOT/schild/modules/
Nun musst Du wie in der mitgelieferten Readme beschrieben, den Pfad zum Thrust Ordner angeben und zwar in der mainfile.php (schreibschutz aufheben und danach das wiedersetzen nicht vergessen - also von CHMOD 444 auf 777 nach dem editieren wieder auf 444).
Dein trust Path lautet in diesem Beispiel:
XOOPS_TRUST_PATH.'schild/modules/protector/include/postcheck.inc.php'
VomProtector selbst halte ich nicht mehr viel, hat sich bei mir schon einige merkwürdigkeiten erlaubt. Hatte ihn deinstalliert.
Deine Beschreibung zur Installation des Protector ist unpräzise. Das mag ein reines Formulierungsproblem sein, evtl. ist es aber auch Ursache für die "Merkwürdigkeiten", die Du beklagt hast.
1.) Das Modul für den root path kommt wie alle Module nicht in ROOT/modules, sondern in den für das WWW offenen Bereich, bei Linux z. B. ROOT/htdocs/modules oder ROOT/web/modules .... jenachdem wie auf dem Server der Ordner benannt ist, in dem die vom WWW aus zugänglichen Dateien lagern.
Diese Dateien hat der Autor von Protector im Ordner 'html' gelagert, d. h. den Unterordner in 'html' so wie er ist hochladen.
2.) Dann muß ein Trust-Pfad definiert werden (für Anglophobe: trust = Vertrauen, thrust = Schub). Dieser Trust-Pfad darf NICHT vom WWW aus zugänglich sein, muß also außerhalb von 'htdocs' oder 'web' liegen, z. B. ROOT/schild, um bei Deinem Beispiel zu bleiben
So wie Du oben ROOT definiert hast, läge der Ordner "schild" ebenfalls in dem vom Web zugänglichen Bereich. Das ist keine korrekte Installation für Protector. Der mit dem Begriff ROOT abgekürzte Teil des Pfades darf den für das Web zugänglichen Bereich nicht mit umfassen, deshalb oben meine Erläuterung hinsichtlich ROOT/htdocs oder ROOT/web für den offenen Bereich.
Zusammenfassung bis hier:
Root-Pfad: ROOT/htdocs (hier lagert die Website)
Trust-Pfad: ROOT/schild
In den Pfad ROOT/schild muß dann alles geladen werden, was laut Protector-Anleitung in den Trust Pfad gehört. Auch hier hat der Autor die Baum-Struktur in seinem Modul Ordner bereits vorgegeben: Der Unterordner im Ordner 'xoops_trust_path' ist so wie vorgegeben nach ROOT/schild/ zu laden.
Das Ergebnis sollte so aussehen:
ROOT/htdocs/modules/protector (vorgegeben im Protector-Download: html/modules/protector)
ROOT/schild/modules/protector (vorgegeben im Protector-Download: xoops_trust_path/modules/protector)
3.) Nach der Installation von Protector muß dann die mainfile.php verändert werden:
- Ergänzung des trust path
- Ergänzung des precheck
- Ergänzung des postcheck
Ergänzung des Trust-Pfades:
Bereits vorhanden ist etwa in Zeile 34
define('XOOPS_ROOT_PATH', 'Root-Pfad');
Darunter ist zu ergänzen
define('XOOPS_TRUST_PATH', 'Trust-Pfad');
Root-Pfad als bereits vorhandener Code würde auf den offenen Web-Bereich verweisen, also ROOT/htdocs. Das könnte beispielsweise so aussehen:
define('XOOPS_ROOT_PATH', '/home/www/8ddf6wwwghe660a1f44exlv8/web');
Trust-Pfad als zu ergänzender Code wäre dann entsprechend ROOT/schild.
Natürlich steht dort nicht "ROOT", sondern der konkrete Pfad in Zeile 34, der mit Ausnahme des endständigen Webordners - hier im Beispiel 'htdocs' - für den Trust-Pfad übernommen wird. Das wiederum könnte dann so aussehen:
define('XOOPS_TRUST_PATH', '/home/www/8ddf6wwwghe660a1f44exlv8/schild');
Du hast oben geschrieben, der Trust-Pfad würde lauten:
"XOOPS_TRUST_PATH.'schild/modules/protector/include/postcheck.inc.php'"
Natürlich lautet der Trust-Pfad tatsächlich:
ROOT/schild
Die Pfade für Pre- und Postcheck ENTHALTEN zwar den Trust-Pfad, SIND aber nicht der Trust-Pfad. In Deinem Beispiel müßte der Placeholde r XOOPS_TRUST_PATH bereits den Ordner 'schild' enthalten. Bei Deinem Code käme der Ordner 'schild' dann doppelt vor:
ROOT/schild/schild/modules/protector/include/postcheck.inc.php
Und da der erste Slash in Deiner postcheck-Zeile fehlt, würde es gar so aussehen:
ROOT/schildschild/modules/protector/include/postcheck.inc.php
So kann der Protector in der Tat nicht funktionieren. Wie gesagt: Vielleicht hast Du den Code hier nur unsauber zitiert. Aber wenn das von anderen so übernommen wird, kommt kein brauchbares Ergebnis herum.