Pfadprobleme bei HTMLArea

Idrian
Beiträge: 30
Registriert: Mo 29. Sep 2003, 14:44
Kontaktdaten:

Beitrag von Idrian » Mi 29. Okt 2003, 08:33

hallo,

also ich werd heut noch mal den Tag drauf verbringen Ursachenforschung zu betreiben, allerdings läuft Contenido nicht auf einem IIS sondern auf Linux mit Apache 1.3.26.

zur Verdeutlichung des beschriebenen Phänomens vielleicht noch mal ein Screenshot dazu weil Bild ja bekanntlich mehr sagt als....

http://www.bfe.de/images/snap.gif

Nachtrag:

ich hab mal in die Error-Log des Apache geschaut:

dort wird z.B ein Fehler aufgeführt mit der Meldung...File not found: contenido_4_4/contenido/includes/upload/bilder/blitzschutz.jpg

kann dort ja auch nicht gefunden werden weil unter

contenido_4_4/contenido/cms/upload/bilder/blitzschutz.jpg

zu finden. Nur was ist verantwortlich für diesen fehlgeleiteten Pfad?

Weiterhin finde ich folgende Einträge in der Contenido internen Error Log:

[29-Oct-2003 09:54:25] PHP Warning: fputs(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 307
[29-Oct-2003 09:54:25] PHP Warning: fclose(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 308

Diese werden geschrieben sobald Spaw einfriert.

Gruß Idrian

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Mi 29. Okt 2003, 10:10

zum Verständnis: Wie lange "befindest" du dich im Editor? Länger als 15 Minuten?

Eventuell kommt da das Problem her: Contenido hat einen automatischen Timeout von 15 Minuten - und wenn du erst nach den 15 Minuten eine Aktion machst, fliegt der angemeldete Benutzer raus :(

Idrian
Beiträge: 30
Registriert: Mo 29. Sep 2003, 14:44
Kontaktdaten:

Beitrag von Idrian » Mi 29. Okt 2003, 10:22

Nein, also damit hat es nichts zu tun. Es passiert schon früher. Ich muss mich danach ja auch nicht neu in Contenido einloggen.

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mi 29. Okt 2003, 10:37

Idrian hat geschrieben: ich hab mal in die Error-Log des Apache geschaut:
dort wird z.B ein Fehler aufgeführt mit der Meldung...File not found: contenido_4_4/contenido/includes/upload/bilder/blitzschutz.jpg
kann dort ja auch nicht gefunden werden weil unter
contenido_4_4/contenido/cms/upload/bilder/blitzschutz.jpg
zu finden. Nur was ist verantwortlich für diesen fehlgeleiteten Pfad?
okay der grund ist einfach der, dass der editor in den backend bereich verlagert wurde. der editor (spaw oder htmledit) wird jetzt via
/contenido/includes/include.backendedit.php eingebunden und nicht mehr über das frontend /cms/front_content.php das ergibt jetzt beim einbinden des editors ein paar wirklich nette situationen die man berücksichten muss.
bei spaw wurde dies so gelöst:
sämtliche pfade bei links und bildern werden ja relativ in die db geschrieben. beim aufrufen des editors in der wysiwyg ansicht werden automatisch alle relativen links automatisch auf absolute links umgewandelt. (dies betrifft alles was via innerHTML eingefügt wird)
da wie gesagt der editor im backend bereich ist, sehen alle absoluten links dann so aus: zB contenido/includes/upload/bilder/wasauchimmer.jpg. da die bilder jedoch sich innerhalb von cms/upload/bilder/wasauchimmer.jpg befinden muss dies dann dementsprechend korrigiert werden.
beim ersten öffnen des editors wird dies innerhalb von spaw_controll.class.php erledigt.
weiters beim wechsel zwischen design und html ansicht wird dies mittels

Code: Alles auswählen

this[editor+'_rEdit'].document.body.innerHTML = this[editor+'_rEdit'].document.body.innerHTML.replace(/<?php echo str_replace('/', '\\/',$cfg['path']['contenido_fullhtml'].$cfg['path']['includes']); ?>/g,'<?php echo $cfgClient[$client]['path']['htmlpath']; ?>');
korrigiert! damit sind die links dann korrekt absolut gesetzt.
beim umschalten auf die html ansicht werden alle absoluten links wieder auf relativ umgeschalten. d.h der absolut gesetzte pfad wird wieder entfernt.
dies sieht in spaw so aus:

Code: Alles auswählen

iHTML = iHTML.replace(/<?php echo str_replace('/', '\\/',$cfgClient[$client]['path']['htmlpath']); ?>/g,'');
beim umschalten in die design ansicht werden die falsch gesetzten links wieder auf die korrekten aboluten links gesetzt. (siehe erstes beispiel)

beim speichern des codes wird ebenfalls eine routine aufgerufen welche die absoluten links wieder auf die relativen ändert und erst dann wird der code in die db geschrieben.

wenn jetzt htmlarea verwendet werden soll müsste zumindestens eine ähnliche funktionalität eingebaut werden.

die korrektur von absolut auf relativ wird zusätzlich noch innerhalb des link einfügen,ändern und bild eigenschaften vorgenommen ! (damit dort ebenfalls relative links zur verfügung stehen!
noch was: die bilder die eingefügt werden müssen in der wysiwyg korrekt absolut gesetzt werden (sonst siehts du nur ein bild fehlt icon)

so weit so gut...
kommen wir zu dem interessanten teil deiner antwort:
Idrian hat geschrieben: Weiterhin finde ich folgende Einträge in der Contenido internen Error Log:
[29-Oct-2003 09:54:25] PHP Warning: fputs(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 307
[29-Oct-2003 09:54:25] PHP Warning: fclose(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 308
Diese werden geschrieben sobald Spaw einfriert.
muss ich mir mal ansehen, diese meldungen sind mir innerhalb von contenido noch nie erschienen.

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mi 29. Okt 2003, 10:50

[29-Oct-2003 09:54:25] PHP Warning: fputs(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 307
[29-Oct-2003 09:54:25] PHP Warning: fclose(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 308
Diese werden geschrieben sobald Spaw einfriert.
ist interessant warum pseudo-cron.inc.php überhaupt innerhalb des editors aufgerufen wird (hat sich anscheinend gegenüber der version 4.3.2.1b geändert) egal.

hier der code der betroffenen funktion innerhalb der datei pseudo-cron.inc.php :

Code: Alles auswählen

function markLastRun($jobname, $lastRun) {
	GLOBAL $debug;
	$jobfile = getJobFileName($jobname);
	$file = fopen($jobfile,"w");
	fputs($file,$lastRun);
	fclose($file);
}
die fehlermeldung weisst an sich darauf hin das die variable $file als wert false zurückliefert - > dies kann bedeuten das eine datei innerhalb von contenido/cronjobs nicht vorhanden ist oder das keine schreibberechtigungen auf die datei vorhanden sind.
da dies nur eine protokollierungsfunktion fehlt vermutlich diese datei:
pseudo-cron.log (welche schreibberchtigung haben sollte)
überprüfe mal die berechtigungen vom verzeichniss cronjobs und aller dateien innerhalb dieses verzeichnisses.
hier ne andere doku zur fehlermeldung
http://www.dclp-faq.de/q/q-fehler-file-handle.html

Idrian
Beiträge: 30
Registriert: Mo 29. Sep 2003, 14:44
Kontaktdaten:

Beitrag von Idrian » Mi 29. Okt 2003, 11:13

zum Verständnis:

wo sollte pseudo-cron.log liegen? Im cronjobs Verzeichnis? Wenn ja, wäre diese in der Tat nicht vorhanden. Und weiterhin sollten alle Dateien im genannten verzeichnis Schreibrechte haben?

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mi 29. Okt 2003, 11:14

in contenido/cronjobs/

und ja

Idrian
Beiträge: 30
Registriert: Mo 29. Sep 2003, 14:44
Kontaktdaten:

Beitrag von Idrian » Mi 29. Okt 2003, 11:37

hab ich alles soweit mal gemacht...
die besagte datei war in der Tat nicht da, allerdings in der Installation auch nicht mitgeliefert.

Hier noch mal der komplette Auszug aus der Error-Log:

[29-Oct-2003 11:23:28] PHP Warning: fopen("session_cleanup.php.job", "w") - Permission denied in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 306
[29-Oct-2003 11:23:28] PHP Warning: fputs(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 307
[29-Oct-2003 11:23:28] PHP Warning: fclose(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 308
[29-Oct-2003 11:23:28] PHP Warning: fopen("optimize_database.php.job", "w") - Permission denied in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 306
[29-Oct-2003 11:23:28] PHP Warning: fputs(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 307
[29-Oct-2003 11:23:28] PHP Warning: fclose(): supplied argument is not a valid File-Handle resource in /www/anton/contenido_4_4/contenido/includes/pseudo-cron.inc.php on line 308

Die betreffenden Dateien haben aber Schreibrechte.

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mi 29. Okt 2003, 11:45

welche berechtigungen haben den deine dateien ?
ich meine alle contenido/cronjobs/*.php.job
ich verwende bei meinem server als berechtigung 666
fürs verzeichniss 777
dann sollten die meldungen nicht mehr auftauchen.

ach ja wer ist der owner der dateien ?

Idrian
Beiträge: 30
Registriert: Mo 29. Sep 2003, 14:44
Kontaktdaten:

Beitrag von Idrian » Mi 29. Okt 2003, 13:18

alles so wie es sein sollte....Rechte, Owner...alles supi...nun aber immer noch selber Effekt nur Log-Fehlermeldung:

[29-Okt-2003 13:08:15] Invalid SQL: insert into con_phplib_active_sessions ( sid, name, val, changed ) values (=', '20031029130815')<br><br>
[29-Okt-2003 13:08:15] Session: freeze() failed.

Hat das Ganze eventuell doch mit dem im anderen Thread erwähnten freeze Problem zu tun?

Auf jeden Fall hab ich die page.inc schon mal angepasst...

trotzdem!
Zuletzt geändert von Idrian am Do 30. Okt 2003, 08:49, insgesamt 1-mal geändert.

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mi 29. Okt 2003, 18:46

Idrian hat geschrieben:alles so wie es sein sollte....Rechte, Owner...alles supi...nun aber immer noch selber Effekt nur Log-Fehlermeldung:
also wenn die berechtigungen wirklich passen, wunderts mich, lösch mal dein errorlog in administrator/system.
setzt nochmals die berechtigungen (eventuell für die dateien auf 777) - den ich würd sagen das gibts net.

das quote spar ich mir beim nächsten punkt.
die lange meldung hatte ich auch schon mal, hab es mir aber noch nicht angesehen, bzw. tritts bei mir nimmer auf.
Idrian hat geschrieben:[29-Okt-2003 13:08:15] Session: freeze() failed.
Hat das Ganze eventuell doch mit dem im anderen Thread erwähnten freeze Problem zu tun?
Auf jeden Fall hab ich die page.inc schon mal angepasst...
korrekt gelöst... hat aber nichts mit dem problem zu tun (glaub ich) - möglich ist aber alles.

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Mi 29. Okt 2003, 19:06

@Idrian:

Würde es Dir was ausmachen, den (nicht benötigten) "sadkjhdkhasdkaldh"-Text ein wenig zu kürzen? :wink:

Danke.

Gruß
HerrB

Idrian
Beiträge: 30
Registriert: Mo 29. Sep 2003, 14:44
Kontaktdaten:

Beitrag von Idrian » Fr 31. Okt 2003, 14:02

Hallo Contenido Gemeinde....
nach all den erwähnten Problemen habe ich noch einmal ein Tabula rasa durchgeführt, die bestehende Installation vom Server geworfen und die neue Installation 4.4.1 aufgespielt.

Was soll ich sagen: alles Probleme sind verflogen, Spaw läuft stabil und sicher.

Jetzt kann Wochenende werden.

Dank nochmal an all die, die mit Rat zur Seite standen.

Gruß Idrian

Gesperrt