Saya menggunakan WP_DEBUG_LOG di lingkungan pengembangan saya dan tidak memiliki masalah dengan debug.log berada di direktori konten-wp.
Terkadang saya mengaktifkan WP_DEBUG dalam produksi ketika saya perlu men-debug sesuatu, dan saya masih ingin menggunakan log tetapi ingin mengarahkan ulang ke sesuatu di luar root web saya. Apakah ini mungkin menggunakan WP_DEBUG_LOG?
Tampaknya jawaban di sini tidak benar lagi untuk WP versi 5.1 dan di atasnya karena perubahan ini https://make.wordpress.org/core/2019/01/23/miscellaneous-developer-focused-changes-in-5-1 /
Anda sekarang dapat mendefinisikan
WP_DEBUG_LOG
sebagai jalur jika Anda ingin menimpa defaultwp-content/debug.log
misalnya:sumber
Ya, jika Anda menambahkan beberapa kode ke plugin atau functions.php tema seperti:
Sunting: orang lain baru saja memberi saya kebutuhan untuk melakukan ini, jadi saya telah memasukkan beberapa kode ke plugin sederhana yang dapat mereka edit; tersedia sebagai intisari jika ada yang menginginkannya.
sumber
Sepertinya kode WordPress telah berubah sejak jawaban terakhir untuk pertanyaan ini diposting. Fungsi wp_debug_mode () saat ini yang terkait dengan konstanta-konstanta tersebut mencakup pengujian untuk apakah WP_DEBUG_LOG sama dengan true atau 1 - dalam hal ini berperilaku seperti yang dijelaskan orang lain.
Namun, Anda juga dapat mengatur bahwa konstan ke string - jalur file pilihan Anda - dan log akan menjadi output di sana. Misalnya, Anda dapat mengaturnya ke jalur di luar direktori Anda untuk konten web yang dapat diakses publik. Anda mungkin harus bermain dengan izin file untuk membuatnya berfungsi.
Saya datang mencari jawaban ini karena plugin keamanan WordFence mengeluh tentang log debug saya yang berpotensi diakses di / wp-content /
if ( in_array( strtolower( (string) WP_DEBUG_LOG ), array( 'true', '1' ), true ) ) { $log_path = WP_CONTENT_DIR . '/debug.log'; } elseif ( is_string( WP_DEBUG_LOG ) ) { $log_path = WP_DEBUG_LOG; } else { $log_path = false; }
sumber
Afaik, Anda tidak dapat mengubah lokasi untuk file debug default. Apa yang dapat Anda ubah adalah lokasi untuk log kesalahan MU serta lokasi untuk file log kesalahan PHP.
sumber
Waktu berubah, dan begitu juga jawaban yang benar untuk pertanyaan teknis.
Jawaban saat ini hingga akhir 2019 sederhana. Saat mendefinisikan WP_DEBUG_LOG "konstan" di wp-config.php, Anda sekarang dapat memberikan path tempat Anda ingin file ditulis.
define( 'WP_DEBUG_LOG', '/tmp/wp-errors.log' );
Lihat Dokumentasi Dukungan Wordpress
sumber