Beiträge von pospiech

    Ich habe mit dem Exploit Scanner Plugin nach Dateien suchen lassen und relativ häufig findet sich in den js Dateien Code der so oder ähnlich aussieht (hier aus der revisions-js.php von WP direkt)

    und es gibt sehr viele Dateien die diese Zeile enthalten

    Code
    ... 
    fromCharCode(c+29):c.toString(36))};if(!''.replace(/^
    ...


    Muss ich mir nun sorgen machen?

    wenn du nicht weißt wer die angelegt hat und wer sich dahinter verbirgt, dann würd ich sie löschen. Hast du denn die Registrierung aktiv? Dann könnten es registrierte User sein.

    Nein man kann sich nicht registrieren.
    Nur wo kommen die dann her?
    Können die von WP selbst kommen?

    Löschen kann ich sie innerhalb von WP nicht. Sie werden bei den Benutzerkonnten sofort ausgeblendet.

    Da mir weder hier, noch jemand bei dem Wordpress Support Forum zu dem mysql Fehler was sagen kann, und alle Plugins zu dem Thema nicht annähernd kompatibel sind mit WP 2.8.3 oder schlicht nichts bewirken habe ich mich an Suchen und Ersetzten versucht.

    Diese Umwandlungen habe ich bislang gefunden:

    Aber das WP ein so massives Problem selber verursacht und keine Möglichkeit zur Lösung bereitstellt hat mein Vertrauen in WP beschädigt. (Mal abgesehen von 4 bugfixes in so kurzer Zeit...)

    Wenn ich die Befehle ausführe, dann bekomme ich für jede Zeile eine Reihe von neuen Anweisungen, die in meiner Datenbank auszuführen sind.

    Wenn ich das mache, dann scheitert mysql jedoch an dieser Zeile (im ersten der 4 Schritte):

    Zitat


    SQL-Befehl:
    ALTER TABLE wp_1posts MODIFY post_name varbinary( 200 ) ;


    MySQL meldet:
    #1283 - Column 'post_name' cannot be part of FULLTEXT index

    was sagt mir das jetzt?

    musst auf jeden Fall in MySQL machen. Solltest aber zumindest MySQL-Grundwissen mitbringen, sonst hat es keinen Sinn, das zu erklären.


    Ich hätte jetzt phpmysql zum ausführen der mysql befehle genommen.
    SQL habe ich nie gelernt, aber verstehe grob was die Befehle machen sollen.

    So wie ich die Anleitung verstehe, soll ich folgendes (mit Ersetzten von 'MyDb' mit meinem Datenbanknamen) ausführen

    Code
    USE information_schema;  
    SELECT CONCAT('ALTER TABLE ', table_name, ' MODIFY ', column_name, ' ', REPLACE(column_type, 'char', 'binary'), ';') FROM columns WHERE table_schema = 'MyDb' and data_type LIKE '%char%';  
    SELECT CONCAT('ALTER TABLE ', table_name, ' MODIFY ', column_name, ' ', REPLACE(column_type, 'text', 'blob'), ';') FROM columns WHERE table_schema = 'MyDb' and data_type LIKE '%text%';  
    SELECT CONCAT('ALTER TABLE ', table_name, ' MODIFY ', column_name, ' ', column_type, ' CHARACTER SET utf8;') FROM columns WHERE table_schema = 'MyDb' and data_type LIKE '%char%';  
    SELECT CONCAT('ALTER TABLE ', table_name, ' MODIFY ', column_name, ' ', column_type, ' CHARACTER SET utf8;') FROM columns WHERE table_schema = 'MyDb' and data_type LIKE '%text%';


    Das liefert mir ein SQL Ergebnis. Was und ob ich damit was anfangen soll ist mir unklar.

    Danach soll ich noch folgendes ausführen

    Code
    ALTER DATABASE MyDb CHARACTER SET utf8;

    Die Grundlegende Idee ist wohl, erstmal alles in binäres Format zu überführen und danach wieder in Zeichen.

    Dann such & ersetz doch einfach in deiner neuen Datenbank


    Ich kenne nicht alle möglichen Sonderzeichen von utf8 und ihre latin1 Äquivalente. Eine manuelles Ersetzten bei einem Systematischen Fehler möchte ich auf jeden Fall vermeiden.

    Eine Lösung mit mysql scheint es ja zu geben, aber ich verstehe die Anleitung nicht hinreichend.

    Vermutlich ist das ein Problem das ich habe weil ich ursprünglich mal WP 2.1.x genutzt habe, wie hier beschrieben:
    http://codex.wordpress.org/Converting_Database_Character_Sets

    Allerdings verstehe ich nicht wie ich die mysql Kommandos eingeben soll, insbesondere den Punkt

    Zitat


    The output of these statements will be another set of statements, based on the tables and columns in your database. Change to your Wordpress database and execute the statements generated above.

    Das dabei erwähnte Plugin soll auch nur bis WP 2.2.x laufen.

    Ich habe mal nachgeschaut - die zu exportierende Datenbank ist als latin1 gespeichert, enthält aber utf8 zeichen. Die sind dann dementsprechend in der Datenbank kaputt, aber WP zeigt sie als utf8 richtig an.

    Beim exportieren kann ich gar keine Optionen zum encoding wählen. Die Datei enthält danach utf8 zeichen als latin1 gespeichert.

    Wenn ich als latin1 importiere, dann zeigt phpmyadmin mir wieder dasselbe bei der Kollation an ( latin1_swedish_ci), aber WP zeigt mir nur noch Sonderzeichen an.

    wie also exportiert und importiert man die WP Datenbank richtig?

    Ich habe auf meinem System mod_rewrite aktiv. (opensuse, Moduleliste enthält 'rewrite').
    Es exisitert auch eine .htaccess mit den Vorgaben des Blogs

    aber ein Aufruf von

    Zitat


    ergibt nur solche Fehler:

    Zitat


    [error] [client 127.0.0.1] File does not exist: /home/matthias/SVN/web/matthiaspospiech.de/wordpress/website/latex, referer: http://www.local-matthiaspospiech.de/

    was soll das?

    Ich habe meine Datenbank von einer alten 2.3.3 Installation exportiert und in eine lokale Installation auf meinem Rechner importiert (mit phpmyadmin, Option war jedesmal UTF8). Zusätzlich habe ich auf 2.8.3 geupdatet.

    Jetzt sind aber alle Umlaut murks: "auslässt... können" usw.

    Wie kann ich das wieder beheben?

    Ich habe wordpress 2.8.3 inzwischen bei mir lokal installiert (Linux System) und würde gerne das automatische Update der Plugins nutzen.

    Jetzt will wp aber von mir eine ftp Adresse wissen. Das geht aber natürlich nicht, weil der Rechner 1) kein ftp installiert hat 2) nicht öffentlich erreichbar ist.

    Gibt es eine mögliche Lösung oder muss ich beim lokalen Testen auf sämtlichen Update Funktionen verzichten?