Realurl - Mod_Rewrite Hacken plötzlich weg?

Alles über die Anwendung und Entwicklung von AddOns.

Realurl - Mod_Rewrite Hacken plötzlich weg?

Beitragvon shoq » 6. Nov 2008, 09:57

Hi,

heute, quasi über Nacht, war auf einer Seite auf einmal der Hacken für Mod_Rewrite in den Realurl-Einstellungen weg.
Ich verwende die realurl_remastered_20.

Habt ihr eine Idee wodran das liegen könnte? Hatte das Problem schon mehrmals, aber mir nichts dabei gedacht und den Hacken einfach neu gesetzt. Kann es also sein, dass irgendeine Veränderung am System diesen Hacken automatisch mitentfernt?

Außerdem würd ich gern wissen, ob es eine Möglichkeit gibt, eine Benachrichtigung zu verschicken (z.B. per Mail), wenn auf einer Seite ein (php-)Fehler aufgetreten ist. Hab danach gegoogelt, aber nichts entsprechendes gefunden.

Gruß shoq
shoq
 
Beiträge: 38
Registriert: 13. Aug 2008, 07:07

Beitragvon lenkradschloss » 8. Nov 2008, 20:02

Habe das gleiche Problem. Die Zeitabstände sind vollkommen unregelmäßig, kann auch mal mehrere Tage prima funktionieren und plötzlich sind alle Haken weg.

Gruß, lenkradschloss
lenkradschloss
 
Beiträge: 6
Registriert: 23. Nov 2007, 09:55

Beitragvon lenkradschloss » 27. Nov 2008, 20:57

Wollte nochmal nachfragen ob es da inzwischen was neues gibt?
In dem anderen Thread zum realurl-Addon habe ich gelesen, dass wohl auch Thomas.Blum inzwischen den gleichen Fehler gehabt hat (zumindest klingt seine Beschreibung wie das Phänomen, dass bei mir stattfindet).

Kann niemand helfen? :cry:

Gruß, lenkradschloss
lenkradschloss
 
Beiträge: 6
Registriert: 23. Nov 2007, 09:55

Beitragvon lenkradschloss » 2. Dez 2008, 12:04

Da der Fehler gerade wieder aufgetreten ist (jetzt war fast 2 Wochen Ruhe :cry: ) habe ich mir gedacht ich poste ihn mal hier. Insgesamt steht das nun ca. 10-20 Mal untereinander bevor dann die eigentlichen Seiten kommen:

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /data/XXX/html/redaxo/include/addons/realurl_remastered/classes/class.realurl.inc.php on line 321

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /data/XXX/html/redaxo/include/addons/realurl_remastered/classes/class.realurl.inc.php on line 571

Gruß, lenkradschloss
lenkradschloss
 
Beiträge: 6
Registriert: 23. Nov 2007, 09:55

Beitragvon shoq » 2. Dez 2008, 12:24

Ist schon seltsam. Bei mir wars bei einer Seite heute morgen auch...
shoq
 
Beiträge: 38
Registriert: 13. Aug 2008, 07:07

Beitragvon ciss » 2. Dez 2008, 17:41

Leider kann ich nicht herausfinden welche Version ich habe (es müsste sich um die handeln die am 25.10. aktuell war), aber rein vom Quelltext her läßt sich das Problem dort nicht nachvollziehen (ich habe es übrigens auch nicht, finde es aber interessant bis heikel).
Die Einstellung für 'mod_rewrite' wird nur geschrieben, wenn die Einstellungen geändert und gespeichert werden. Es gibt zwar darüber hinaus noch ein paar schreibende Zugriffe (z.B. beim Löschen eines Artikels), die aber eben nicht diese Option betreffen.

Überlegung war noch, dass die Einstellungen möglicherweise gelöscht worden sein könnten, da sie in generated/files/realurlconf.inc.php abgelegt sind. Dagegen spricht aber, dass bei fehlender Datei mod_rewrite standardmäßig gesetzt ist.
Von wann ist eure Version? ist eventuell noch das alte realurl aktiv? Wie sieht eure realurlconf.inc.php aus wenn der Haken mal wieder weg ist?
Benutzeravatar
ciss
 
Beiträge: 359
Registriert: 8. Feb 2008, 04:24
Wohnort: Berlin

Beitragvon jeandeluxe » 3. Dez 2008, 00:55

Moin,
ciss hat geschrieben:Leider kann ich nicht herausfinden welche Version ich habe (es müsste sich um die handeln die am 25.10. aktuell war),

Solltest du es genauer wissen wollen, dann geht das mangels (leider) Versionsangaben im Code nur per direktem Vergleich.. die Vor-Versionen kann man auf der DL-Seite immernoch runterladen, wenn man statt der "21" in der URL die gewünschte Versionszahl eintipptert..
ciss hat geschrieben:aber rein vom Quelltext her läßt sich das Problem dort nicht nachvollziehen

Falls du die Zeilennummern meinst, dann müßtest du wohl r18 oder älter haben.. bei r19 würde noch die Zeile 321 stimmen - Zeilen 321 & 571 passen nur bei r20 & r21.
ciss hat geschrieben:(ich habe es übrigens auch nicht, finde es aber interessant bis heikel).

Ich hatte es auch schon einmal, weiß leider nicht mehr ob es r20 oder r21 war.. seitdem ist es nicht mehr vorgekommen, insofern auch leider nicht dingfest zu machen.

lg,
Jan
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Beitragvon ciss » 3. Dez 2008, 02:00

mangels (leider) Versionsangaben im Code nur per direktem Vergleich

Hab mal das Erstellungsdatum der class.realurl.inc.php abgeglichen (8.9.08) - müsste demnach die r19 haben.

Falls du die Zeilennummern meinst

Nein, hab den ganzen Code durchstöbert. So wie's da aussieht ist es ganz einfach unmöglich, dass der Haken verschwinden kann.
Benutzeravatar
ciss
 
Beiträge: 359
Registriert: 8. Feb 2008, 04:24
Wohnort: Berlin

Beitragvon jeandeluxe » 3. Dez 2008, 13:03

Moin,
ciss hat geschrieben:Nein, hab den ganzen Code durchstöbert. So wie's da aussieht ist es ganz einfach unmöglich, dass der Haken verschwinden kann.

D.h. wenn irgendwas klemmt wird als default Wert aktiviert verwendet?

AFAIR werden bei dem bug alle Einstellungen zurückgesetzt.. warum dann für die mod_rewrite Option nicht der default Wert gesetzt wird, wäre unter den Umständen wirklich merkwürdig.

Falls sich das nicht festnageln läßt, könnte man überlegen die relevanten Stellen per try/catch abzufangen, und bei nem Fehler ein log zu schreiben. Will aber Nicole nicht vorgreifen.. wird sich sicher dazu äußern wenn sie wieder Luft hat.

lg,
Jan
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Beitragvon ciss » 3. Dez 2008, 17:33

Die Frage wäre, mit was für Fehlern zu rechnen ist. Sinnvoll wäre sicherlich, direkt in der realurl_config::writeData() ein Logging einzubauen - für jeden Schreibzugriff auf die config. Sollte mit wenigen Zeilen machbar sein.

Die Voreinstellungen findest du übrigens in der realurl_config::init().
Benutzeravatar
ciss
 
Beiträge: 359
Registriert: 8. Feb 2008, 04:24
Wohnort: Berlin

Beitragvon jeandeluxe » 3. Dez 2008, 18:33

Moin,
ciss hat geschrieben:Sinnvoll wäre sicherlich, direkt in der realurl_config::writeData() ein Logging einzubauen - für jeden Schreibzugriff auf die config.

Hab ich da hoc mal bei mir eingebaut..

Code: Alles auswählen
fwrite($f, $content); // Originalzeile in Funktion writeData(), darunter:
error_log("WRITE on ".date('d.m.Y G:i:s')."\n".$content."\n---\n", 3, $_SERVER['DOCROOT']."/redaxo/include/addons/realurl_remastered/realurlconf.debug.log");


Die andere Frage wäre ob nicht beim Lesen bzw. dort beim unserialze was schief geht.. mal sehn.

lg,
Jan
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Beitragvon ciss » 3. Dez 2008, 18:46

Die andere Frage wäre ob nicht beim Lesen bzw. dort beim unserialze was schief geht

Könnte natürlich sein... du könntest die readData() noch so umbauen:

Code: Alles auswählen
foreach($REALURL_CONF as $key => $value) {
  $REALURL_CONF[$key] = unserialize($value);
  if($key = 'mod_rewrite') {
    //Schreibe $REALURL_CONF[$key] in logfile
  }
}

Kann je nach Zahl der Zugriffe natürlich schnell heftig werden. Aber immerhin siehst du so, wenn sich der Wert plötzlich ohne vorherigen Schreibzugriff ändert.
writeData() scheint übrigens wirklich die einzige Stelle zu sein, bei der die config beschreibbar geöffnet wird.

EDIT: müsstest evtl. noch casten, falls mal ein leerer String dabei ist, also (int) (bool) $REALURL_CONF[$key]
Benutzeravatar
ciss
 
Beiträge: 359
Registriert: 8. Feb 2008, 04:24
Wohnort: Berlin

Beitragvon jeandeluxe » 3. Dez 2008, 19:07

ciss hat geschrieben:... du könntest die readData() noch so umbauen:

Habs schon ähnlich drinne:

Code: Alles auswählen
// debug
$confread ='';
foreach($REALURL_CONF as $key => $value) {
   if(is_array($value))
   {
   $confread .= "  ".$key." = ".serialize($value)."\n";
   }
   else
   {
   $confread .= "  ".$key." = ".$value."\n";
   }
}            
error_log("READ on ".date('d.m.Y G:i:s')."\n\n".$confread."\n---\n", 3, $_SERVER['DOCROOT']."/redaxo/include/addons/realurl_remastered/realurlconf.debug.log");

ciss hat geschrieben:Kann je nach Zahl der Zugriffe natürlich schnell heftig werden.

Allerdings, und das hätte ich jetzt nicht erwartet: Jeder Seitenaufruf erzeugt hier 2 reads und einen write.. hm.

Für jeden Aufruf der realurl Seiten im backend gibts verständlicherweise reads aber auch wieder 2, und beim Speichern genauso: 2 writes.


*kopfkratz*,
Jan






lg,
Jan
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Beitragvon n.ruediger » 7. Dez 2008, 01:21

So, da bin ich dann auch dazugestoßen.

Also der Fehler liegt wohl erst einmal daran, dass die Config-Datei unter /generated/files/ weg ist. Hier können dann die Parameter nicht mehr gelesen werden und es kommt zu den beschriebenen Fehlermeldungen.

Jetzt wäre es für mich sehr interessant zu wissen, warum die Datei einfach weg ist oder das Skript hierauf nicht zugreifen kann.

Es wäre sehr, sehr nett von den Betroffenen, wenn mir jemand einen Zugang zum Redaxosystem zur Verfügung stellen könnte, um dort mal die Umgebung zu erkunden, sprich anzusehen, was da noch für Addones installiert sind o.ä.

Ich kann das hier auf meinen Installationen (Lokal und Server) leider gar nicht nachvollziehen. Hier läuft es noch seit Wochen. Bin mir aber ziemlich sicher, dass wir das Problem gemeinsam schon lösen können.

Btw: Ich habe jetzt einen Bugtracker für realurl eingerichtet. Ihr findet ihn unter http://www.bugtracker.biz-design.biz/. Hier hab ich dann einen besseren Überblick über entstandene Probleme oder auch neuen Wünschen.

Bis dahin,
Nicole
Benutzeravatar
n.ruediger
 
Beiträge: 418
Registriert: 21. Mär 2007, 11:25
Wohnort: Frankfurt (Oder)

Beitragvon jeandeluxe » 7. Dez 2008, 13:34

Moin Nicole,
n.ruediger hat geschrieben:Also der Fehler liegt wohl erst einmal daran, dass die Config-Datei unter /generated/files/ weg ist.

Hm, ist hier dann aber ein anderer Effekt. Hab die config Datei einfach mal gelöscht -> frontend nicht erreichbar, backend keine Fehlermeldung, beim Aufruf des realurl Menüs werden die generischen Werte geladen, sprich u.a. is mod_rewrite akitv.

n.ruediger hat geschrieben:Jetzt wäre es für mich sehr interessant zu wissen, warum die Datei einfach weg ist oder das Skript hierauf nicht zugreifen kann.

Kanst du gerne haben, aber das Problem ist ja u.a., daß der bug nur selten auftritt.. ich persönlich hatte überlegt die entsprechenden Stellen per try/catch aufzufangen, und beim Auftreten des Fehlers einen möglicht aussagekräftigen Eintrag in ner log Datei zu erzeugen.

n.ruediger hat geschrieben:Btw: Ich habe jetzt einen Bugtracker für realurl eingerichtet. Ihr findet ihn unter http://www.bugtracker.biz-design.biz/.


Sehr gut.. soll ich die Sache mit den Textile links dort reinkippen, oder hast du dir das schon angesehn?

lg,
Jan
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Nächste

Zurück zu AddOns [R4]

Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 1 Gast