keine deubug.log datei in lokaler WP-Installation
-
Hi,
ich habe mir eine lokale Entwicklungsumgebung mit LAMPP in Ubuntu eingerichtet und versuche nun Möglichkeiten zum Debugging zu finden. Ich habe in der wp.config.php bzw. der wp-config-sample.php Datei alles notwendige zum Debugging aktiviert also:
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_DISPLAY', true); define( 'WP_DEBUG_LOG', true ); define( 'SCRIPT_DEBUG', true );
kann aber keine debug.log Datei finden. Woran könnte das denn liegen?
danke,
Philipp
Moderatorenhinweis: Bitte Quellcode als ‘Code’ auszeichnen.
-
Dieses Thema wurde geändert vor 4 Jahren, 5 Monaten von
Hans-Gerd Gerhards.
-
Dieses Thema wurde geändert vor 4 Jahren, 5 Monaten von
-
Hallo,
schau mal, ob du im Ordner/wp-content/
die Dateidebug.log
hast.
In der wp-config-sample.php brauchst du das nicht zu ändern – das ist nur die Vorlage. Es reicht also die Änderung in der wp.config.php
Viele Grüße
Hans-Gerddanke für die Nachricht, leider nein… Bei mir sind die ganzen „define“ Definitionen in der wp-config-sample Datei, deshalb habe ich das dort dazu geschrieben. Ich habe in Ubuntu noch eine Datei in einem anderen Ordner, die config-localhost.php Datei. Muss ich das evtl .dort rein schreiben?
Die
wp-config-sample.php
ist nur ein Muster (engl. sample), wie die Konfigurations-Dateiwp-config.php
aussehen könnte. Falls du mal versehentlich diewp-config.php
löschst, kannst du die Datei rasch kopieren, die Zugangsdaten der Datenbank und das Tabellen-Präfix reinschreiben und alles sollte wieder laufen. Ansonsten bleiben Änderungen an der Datei ohne Folgen.Wenn du einen Debug-Log ausgeben möchtest, musst du die Änderungen in der
wp-config.php
eingeben und die Datei mittouch
wp-content/debug.loganlegen und dem Benutzer mit Rechten für den Webserver mit
chown www-data:www-data wp-content/debug.log` zuweisen.ok. habe ich gemacht, allerdings bleibt die debug.log Datei leer auch wenn ich die Seite neu lade.
Gibt es denn aktuell PHP-Fehler?
Ja, „there has been a critical error on your website“.
„has been“ ist Vergangenheitsform. 🙂
Du müsstest schon genau das Szenario reproduzieren, unter dem der Fehler aufgetreten ist, falls die Website nicht akut betroffen ist (z.B. White Screen of Death).Du kannst ja die Debug-Meldungen auch erst einmal im Browser ausgeben – für einen kurzen Moment werden sich wohl nicht zu viele daran stören. Langfristig sieht das natürlich unschön aus und liefert Angreifern unnötig Informationen zu möglichen Schwachstellen.
Wobei mit
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_DISPLAY', true);
die Fehler bereits im Browser ausgegeben werden sollten.
Du hast das oberhalb von
/* That's all, stop editing! Happy blogging. */
eingetragen?/* That’s all, stop editing! Happy blogging. */ taucht bei mir nur in der wp-config-sample.php auf und nicht in der wp-config.php. Hier mal die beiden Dateien:
wp-config.php
<?php /*** * WordPress's Debianised default master config file * Please do NOT edit and learn how the configuration works in * /usr/share/doc/wordpress/README.Debian ***/ /* Look up a host-specific config file in * /etc/wordpress/config-<host>.php or /etc/wordpress/config-<domain>.php */ $debian_server = preg_replace('/:.*/', "", $_SERVER['HTTP_HOST']); $debian_server = preg_replace("/[^a-zA-Z0-9.\-]/", "", $debian_server); $debian_file = '/etc/wordpress/config-'.strtolower($debian_server).'.php'; /* Main site in case of multisite with subdomains */ $debian_main_server = preg_replace("/^[^.]*\./", "", $debian_server); $debian_main_file = '/etc/wordpress/config-'.strtolower($debian_main_server).'.php'; if (file_exists($debian_file)) { require_once($debian_file); define('DEBIAN_FILE', $debian_file); } elseif (file_exists($debian_main_file)) { require_once($debian_main_file); define('DEBIAN_FILE', $debian_main_file); } elseif (file_exists("/etc/wordpress/config-default.php")) { require_once("/etc/wordpress/config-default.php"); define('DEBIAN_FILE', "/etc/wordpress/config-default.php"); } else { header("HTTP/1.0 404 Not Found"); echo "Neither <b>$debian_file</b> nor <b>$debian_main_file</b> could be found. <br/> Ensure one of them exists, is readable by the webserver and contains the right password/username."; exit(1); } /* Default value for some constants if they have not yet been set by the host-specific config files */ if (!defined('ABSPATH')) define('ABSPATH', '/usr/share/wordpress/'); if (!defined('WP_CORE_UPDATE')) define('WP_CORE_UPDATE', false); if (!defined('WP_ALLOW_MULTISITE')) define('WP_ALLOW_MULTISITE', true); if (!defined('DB_NAME')) define('DB_NAME', 'wordpress'); if (!defined('DB_USER')) define('DB_USER', 'wordpress'); if (!defined('DB_HOST')) define('DB_HOST', 'localhost'); if (!defined('WP_CONTENT_DIR') && !defined('DONT_SET_WP_CONTENT_DIR')) define('WP_CONTENT_DIR', '/var/lib/wordpress/wp-content'); /* Default value for the table_prefix variable so that it doesn't need to be put in every host-specific config file */ if (!isset($table_prefix)) { $table_prefix = 'wp_'; } if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') $_SERVER['HTTPS'] = 'on'; require_once(ABSPATH . 'wp-settings.php'); define( 'WP_DEBUG', true ); define( 'WP_DEBUG_DISPLAY', true); define( 'WP_DEBUG_LOG', true ); define( 'SCRIPT_DEBUG', true ); ?>
wp-config-sample.php
<?php /** * The base configuration for WordPress * * The wp-config.php creation script uses this file during the * installation. You don't have to use the web site, you can * copy this file to "wp-config.php" and fill in the values. * * This file contains the following configurations: * * * MySQL settings * * Secret keys * * Database table prefix * * ABSPATH * * @link https://codex.wordpress.org/Editing_wp-config.php * * @package WordPress */ // ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define( 'DB_NAME', 'database_name_here' ); /** MySQL database username */ define( 'DB_USER', 'username_here' ); /** MySQL database password */ define( 'DB_PASSWORD', 'password_here' ); /** MySQL hostname */ define( 'DB_HOST', 'localhost' ); /** Database Charset to use in creating database tables. */ define( 'DB_CHARSET', 'utf8' ); /** The Database Collate type. Don't change this if in doubt. */ define( 'DB_COLLATE', '' ); define('FS_METHOD','direct'); define("FTP_HOST", "localhost"); define("FTP_USER", "admin"); define("FTP_PASS", "1234"); /**#@+ * Authentication Unique Keys and Salts. * * Change these to different unique phrases! * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service} * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again. * * @since 2.6.0 */ define( 'AUTH_KEY', 'put your unique phrase here' ); define( 'SECURE_AUTH_KEY', 'put your unique phrase here' ); define( 'LOGGED_IN_KEY', 'put your unique phrase here' ); define( 'NONCE_KEY', 'put your unique phrase here' ); define( 'AUTH_SALT', 'put your unique phrase here' ); define( 'SECURE_AUTH_SALT', 'put your unique phrase here' ); define( 'LOGGED_IN_SALT', 'put your unique phrase here' ); define( 'NONCE_SALT', 'put your unique phrase here' ); /**#@-*/ /** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'wp_'; /** * 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', true); define( 'WP_DEBUG_LOG', true ); define( 'SCRIPT_DEBUG', true ); /* That's all, stop editing! Happy publishing. */ /** 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' );
-
Diese Antwort wurde geändert vor 4 Jahren, 5 Monaten von
Bego Mario Garde. Grund: Code-Formatierung korrigiert
Manchmal wünsche ich mir, Forenteilnehmende würden auch nur ansatzweise kapieren, wieviel zusätzliche Arbeit sie hier mit unformatiertem Code verursachen. Wieder über zehn Minuten vertrödelt, weil jemand nicht in der Lage war, Code zu markieren und auf einen Button [CODE] zu klicken:
Wie auch immer – anscheinend hast du WordPress als Debian-Paket installiert und die
wp-config.php
wird über eine Installations-Routine des Paketmanagers aufgesetzt. Dagegen ist nichts einzuwenden, es erklärt aber wieso die Zeile/* That's all, stop editing! Happy blogging. */
in deiner Konfigurationsdatei nicht vorhanden ist.Ok. sorry. Nächstes mal mit der Code Taste. Was heisst das denn jetzt und wie kriege ich den Debug-Mechanismus zum Laufen?
In einfacher Sprache:
Die
wp-config.php
hast nicht du erstellt.
Diewp-config.php
kommt aus einem Debian-Paket.
Deshalb sieht diewp-config.php
ein bisschen anders aus, als sonst.
Das ist aber OK.Mit deinem Eintrag solltest du bereits Debug-Mitteilungen sehen.
Du kannst aber auch das Plugin WP Debugging installieren.
Ok. ich probier es mal mit WP Debugging. Ich habe eine Seite mit einem Child Theme erstellt, die ich jetzt ganz gerne davon unabhängig machen würde und deswegen am schauen, was ich aus dem Parent-Theme an Code übernehmen kann und was ich besser an die Funktionalität meines Themes anpasse. Einfach nur die Meldung Word Press Error ist da zu unspezifisch. Danke aber auf jeden Fall!
Manchmal helfen auch die Einträge im Error-Log des Webservers.
Grundsätzlich kannst du Fehler im Child-Theme testen, wenn du zwischen Parent- und Child-Theme wechselst. Das Plugin Query Monitor liefert für Entwickler hilfreiche Informationen, wendet sich aber ausdrücklich nicht an Einsteiger.wenn debug.log funktionieren würde wäre das schon super, aber ich hab den Eindruck dass da nichts rein geschrieben wird…
Stimmen denn die Dateirechte der Datei?
-
Diese Antwort wurde geändert vor 4 Jahren, 5 Monaten von
- Das Thema „keine deubug.log datei in lokaler WP-Installation“ ist für neue Antworten geschlossen.