Support » Allgemeine Fragen » PHP FATAL ERROR, Plugins können nicht aktualisiert werden

  • Gelöst 01006bb00c6f0000

    (@01006bb00c6f0000)


    Hallo, wenn ich versuche ein Plugin zu aktualisieren erhalte ich folgende Meldung: „Aktualisierung fehlgeschlagen: -1“ bzw. „Aktualisierung fehlgeschlagen: Internal Server Error“.

    Ich bin was Programmierung betrifft, bin ich ein absoluter Anfänger.

    Ich habe via FileZilla FTP-Client im Hauptverzeichnis.maintenancegelöscht und dann die Webseite neu geladen – das hat leider nichts gebracht. Daraufhin habe ich den Webhoster gebeten, mir die Fehlermeldung zu senden.

    
    Got error 'PHP message: PHP Fatal error:  Uncaught Error: Call to undefined
    
    function trailingslashit() in
    
    /www/htdocs/w0108c93/versicherungsmakler-joerg-meibusch-prenzlau.de/wp-includes/class-wp-textdomain-registry.php:103\nStack
    
    trace:\n#0
    
    /www/htdocs/w0108c93/versicherungsmakler-joerg-meibusch-prenzlau.de/wp-includes/l10n.php(784):
    
    WP_Textdomain_Registry->set('default', 'de_DE', '/www/htdocs/w01...')\n#1
    
    /www/htdocs/w0108c93/versicherungsmakler-joerg-meibusch-prenzlau.de/wp-includes/load.php(1401):
    
    load_textdomain('default', '/www/htdocs/w01...', 'de_DE')\n#2
    
    /www/htdocs/w0108c93/versicherungsmakler-joerg-meibusch-prenzlau.de/wp-includes/load.php(278):
    
    wp_load_translations_early()\n#3
    
    /www/htdocs/w0108c93/versicherungsmakler-joerg-meibusch-prenzlau.de/wp-settings.php(74):
    
    wp_maintenance()\n#4
    
    /www/htdocs/w0108c93/versicherungsmakler-joerg-meibusch-prenzlau.de/wp-config.php(90):
    
    require_once('/www/htdocs/w01...')\n#5
    
    /www/htdocs/w0108c93/versicherungsmakler-joerg-meibusch-prenzlau.d
    
     e/wp-load.php(50): require_once(...', referer:https://versicherungsmakler-joerg-meibusch-prenzlau.de/wp-admin/post.php?post=5529&action=edit

    Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

Ansicht von 15 Antworten - 16 bis 30 (von insgesamt 41)
  • Die Datei sieht soweit unkritisch aus.

    Du könntest versuchen, alle Plugins vorübergehend zu deaktivieren, um sie als Fehlerquelle auszuschließen. Außerdem hatte dir Hans-Gerd geschrieben, wie du den Debug-Modus aktivierst – das hast du bisher nicht umgesetzt.

    Thread-Starter 01006bb00c6f0000

    (@01006bb00c6f0000)

    Inzwischen habe ich auch die wp-config.php heruntergelden, geöffnet und zusätzlich auch unter einem anderem Namen gespeichert. Dann dort in der einen wp-config.php folgendes eingetragen:

    /* @link https://codex.wordpress.org/Debugging_in_WordPress */
    define( 'WP_DEBUG', true );
    define( 'WP_DEBUG_DISPLAY', false);
    define( 'WP_DEBUG_LOG', true );
    
    /* That's all, stop editing! Happy blogging. */

    Dann habe ich die alte wp-config.php Datei durch die geänderte ersetzt und die Datei und Verzeichnislisten aktualisiert. Danach habe ich nach der debug.log Datei gesucht und keine gefunden.

    Ich habe dann wieder die Original wp-config.php Datei ins Verzeichnis eingefügt, und weiter nach der debug.log Datei gesucht, habe aber keine gefunden.

    • Diese Antwort wurde geändert vor 6 Monaten, 3 Wochen von Bego Mario Garde.
    • Diese Antwort wurde geändert vor 6 Monaten, 3 Wochen von Bego Mario Garde.
    • Diese Antwort wurde geändert vor 6 Monaten, 3 Wochen von Bego Mario Garde. Grund: Code formatiert

    Bitte verwende für Code-Abschnitte den Code-Block.
    Das ist sonst nur mühsam zu korrigieren.

    Screenshot
    Zum Vergrößern bitte anklicken …

    Der Debug-Log ist nicht unmittelbar da, wenn du die wp-config.php änderst, sondern erst, nachdem wieder ein Fehler aufgetaucht ist. Das hektisch mehrfach zu ändern bringt nichts.

    Und vielleicht bringt ja auch die Installation des Plugins Health Check & Troubleshooting Klarheit. Das hatte ich dir auch vorgeschlagen.
    Aber zunächst solltest du mal schauen, ob irgendetwas in der debug.log steht (im Ordner wp-content).

    Thread-Starter 01006bb00c6f0000

    (@01006bb00c6f0000)

    1) Ich habe heute probiert, das Plugin: „Health Check & Troubleshooting“ über „Plugins installieren“ zu installieren – daraufhin erschien dort folgende Meldung: „Aktualisierung fehlgeschlagen“. Daraufhin habe ich es über „Plugins hinzufügen“, „Plugin hochladen“ versucht und bekam folgendes angezeigt: „Installation fehlgeschlagen: -1,

    2) Danach habe ich erneut versucht eine debug.log Datei zu erhalten (ich habe wohl wieder etwas falsch gemacht, finde aber meinen Denkfehler nicht).

    3) Nachdem ich die wp-config.php in einer zuvor angelegten Datei auf einer externen Festplatte gespeichert hatte, speicherte ich die Datei unter wp-config_2.php dort erneut ab.

    4) Nun änderte ich den Namen der zuvor gespeicherten wp-config.php Datei in wp-config_original.php.

    5) Im Anschluss öffnete ich „wp-config_2.php“ und nahm folgende Änderungen vor:

    * @link https://codex.wordpress.org/Debugging_in_WordPress
     */
    define('WP_DEBUG', false);
    
    /* That's all, stop editing! Happy blogging. */

    geändert in:

    * @link https://codex.wordpress.org/Debugging_in_WordPress
     */
    define( 'WP_DEBUG', true );
    define( 'WP_DEBUG_DISPLAY', false);
    define( 'WP_DEBUG_LOG', true );
    
    /* That's all, stop editing! Happy blogging. */
    

    6) Dann habe ich „wp-config_2.php“ in „wp-config.php“ umbenannt und die Datei auf dem Server durch die frisch umbenannte Datei ersetzt und bei FileZilla auf „Datei- und Verzeichnislisten aktualisieren geklickt. Danach habe ich die „wp-config.php“ auf der externen Festplatte wieder in „wp-config_2.php“ umbenannt.

    7) Nun habe ich erneut versucht auf der Webseite über Plugins, die Plugins zu aktualisieren in dem ich in der jeweiligen Zeile auf „jetzt aktualisieren“ geklickt habe. Diesmal erschien nicht die Meldung: „Aktualisierung fehlgeschlagen: -1“ sondern: „Aktualisierung fehlgeschlagen: Internal Server Error“. Bei FileZilla auf dem Server wird keine Fehlermeldung angezeigt und ich kann auch keine debug.log Datei finden.

    Hm, ein wenig viel Dateiumbenennung? 😀

    Poste bitte mal den aktuellen Inhalt der wp-config.php – in der Antwort bitte die Zeilen mit den Zugangsdaten zur Datenbank und Sicherheitsschlüsseln löschen, sie sind für das Problem des Internal Server Error unerheblich.

    Und schau nochmal im wp-content Ordner ob es dort nun eine Logdatei gibt. Filezilla aktualisiert vielleicht die Ansicht nicht sofort.

    Filezilla aktualisiert vielleicht die Ansicht nicht sofort.

    Nicht nur vielleicht, macht Filezilla leider nicht automatisch. 😉

    Thread-Starter 01006bb00c6f0000

    (@01006bb00c6f0000)

     */
    $table_prefix  = '2ctr7_';
    define( 'WP_POST_REVISIONS', 10 );
    
    /**
     * For developers: WordPress debugging mode.
     *
     * Change this to true to enable the display of notices during development.
     * It is strongly recommended that plugin and theme developers use WP_DEBUG
     * in their development environments.
     *
     * For information on other constants that can be used for debugging,
     * visit the Codex.
     *
     * @link https://codex.wordpress.org/Debugging_in_WordPress
     */
    define( 'WP_DEBUG', true );
    define( 'WP_DEBUG_DISPLAY', false);
    define( 'WP_DEBUG_LOG', true );
    
    /* That's all, stop editing! Happy blogging. */
    
    /** Absolute path to the WordPress directory. */
    if ( !defined('ABSPATH') )
    	define('ABSPATH', dirname(__FILE__) . '/');
    
    /** Sets up WordPress vars and included files. */
    require_once(ABSPATH . 'wp-settings.php');

    Im Ordner wp-content gibt es auch nach mehr als 2 Stunden keine debug.log Datei.

    Die Datei scheint soweit in Ordnung zu sein.

    Der Error-Log schreibt sich nicht von selbst, sondern entsteht erst, wenn du eine fehlerhafte Funktion ausführst.

    Thread-Starter 01006bb00c6f0000

    (@01006bb00c6f0000)

    Also reicht es nicht aus wenn ich die wp-config.php Datei wie oben beschrieben ändere und dann auf der Webseite versuche ein Plugin zu aktualisieren, wobei dann die Meldung „Aktualisierung fehlgeschlagen: Internal Server Error“ erscheint, um eine debug.log Datei zu erhalten?

    Das sollte eigentlich ausreichen, um entweder im Debug-Log von WordPress oder im Error-Log des Webservers eine Fehlermeldung auszugeben. Der Debug-Log sollte unter wp-content/debug.log erscheinen. Die Datei kannst du auch manuell anlegen, die Dateirechte sollten auf 600 gesetzt werden und idealerweise hast du in der .htaccess im Rootdirectory deiner WordPress-Installation oberhalb des von WordPress eingetragenen Blocks noch folgenden Code stehen:

    <Files debug.log>
        Order allow,deny
        Deny from all
    </Files>
    Thread-Starter 01006bb00c6f0000

    (@01006bb00c6f0000)

    Ist das die .htaccess Datei?

    php_value memory_limit 256M
    php_value max_input_vars 10000
    
    # BEGIN WordPress
    # Die Anweisungen (Zeilen) zwischen „BEGIN WordPress“ und „END WordPress“ sind
    # dynamisch generiert und sollten nur über WordPress-Filter geändert werden.
    # Alle Änderungen an den Anweisungen zwischen diesen Markierungen werden überschrieben.
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    
    # END WordPress

    Ja. Dort kannst du den Code als erste Zeilen eintragen.

    Thread-Starter 01006bb00c6f0000

    (@01006bb00c6f0000)

    so?

    <Files debug.log>
        Order allow,deny
        Deny from all
    </Files>
    
    php_value memory_limit 256M
    php_value max_input_vars 10000
    
    # BEGIN WordPress
    # Die Anweisungen (Zeilen) zwischen „BEGIN WordPress“ und „END WordPress“ sind
    # dynamisch generiert und sollten nur über WordPress-Filter geändert werden.
    # Alle Änderungen an den Anweisungen zwischen diesen Markierungen werden überschrieben.
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    
    # END WordPress
Ansicht von 15 Antworten - 16 bis 30 (von insgesamt 41)