Saya memiliki masalah dengan instalasi Drupal saya, misalnya:
- ketika saya mengaktifkan atau menonaktifkan modul, Ini mengarahkan saya ke halaman kosong,
- ketika saya membuat jenis konten baru dan menyimpannya, mengarahkan saya ke halaman kosong,
- ketika saya menambahkan tampilan baru dan menyimpannya, itu mengarahkan saya ke halaman kosong,
- ketika saya mencoba untuk menghapus cache, itu mengarahkan saya kembali ke halaman kosong,
- atau dalam kasus serupa.
Pada dasarnya semua halaman konfirmasi mengarahkan saya ke layar putih. Ketika saya menyegarkan kembali, itu menunjukkan kepada saya halaman. Saya mencoba untuk meningkatkan nilai memori PHP tetapi tidak membantu.
Apakah ada solusi lain untuk ini?
Kesalahan yang saya alami:
Kesalahan fatal: Ukuran memori yang diijinkan 100663296 byte habis (mencoba mengalokasikan 8192 byte) di situs / semua / modul / tampilan / plugin / views_plugin_localization_none.inc pada baris 1
Jawaban:
Saya tahu ini mungkin terlambat, tetapi itu membantu saya. Seringkali sebuah modul menyebabkan WSOD, saya tidak bisa hanya menonaktifkan modul untuk menguji yang mana, karena saya mungkin telah kehilangan data dalam proses. Apa yang saya lakukan adalah mengedit sementara fungsi ini di
module.inc
, diincludes
direktori intiDan saya menambahkan 2 pernyataan cetak dalam kode di atas, kemudian me-refresh halaman, modul yang tidak mencapai pernyataan "Selesai memuat $ modul" adalah yang bermasalah ... itu berkembang dalam kasus saya.
Setelah menemukan modul, Anda bisa masuk ke tabel sistem dan mencari modul itu, atur statusnya = 0 dan bootstrap = 0 atau jalankan kueri:
Referensi: Debugging Drupal White Screen of Death (WSOD)
sumber
Tempel kode ini di
index.php
file Anda . Ini akan menampilkan pesan kesalahan bukan halaman kosong. Setidaknya akar masalahnya bisa diketahui. Rekatkan tepat setelah tag php.Semoga ini akan menunjukkan jalannya kepada Anda !.
http://drupal.org/node/158043
sumber
tail /var/log/apache2/error.log
. Itu akan menunjukkan kepada Anda 10 baris terbaru dari file itu.index.php
adalah ide yang buruk (bahkan sementara, karena kebanyakan orang malas untuk menghapusnya nanti jika ini berfungsi), lebih baik untuk menempelkannya langsung ke file pengaturan Anda.Alasan kematian layar putih kosong adalah pelaporan kesalahan dimatikan, untuk memeriksa kesalahan tambahkan baris berikut dalam file setting.php Anda:
Untuk kesalahan yang Anda hadapi ("Ukuran memori yang diizinkan dari XXX byte habis"), Anda dapat mencoba hal-hal berikut:
Pangkas cache secara manual dan periksa apakah itu memperbaiki masalah (Mungkin baik untuk membuat cadangan DB Anda sebelum melakukan itu):
Access phpMyAdmin and truncate all tables starting by cache_ from the database
.Menambah batas memori (karena alasan utama kesalahan di atas adalah kehabisan memori oleh server yang menyebabkan pemuatan sebagian modul dan yang menyebabkan masalah) dengan menambahkan baris berikut di file settings.php Anda:
ini_set('memory_limit', '-1');
Menambahkan
ini_set('memory_limit', '-1');
menimpa batas memori PHP default.Jika Anda ingin membatasi memori daripada
-1
Anda dapat memberikan ukuran memori seperti '256M' ATAU '512M'.sumber
Bisa jadi salah satu modul Anda kehabisan memori.
Anda dapat menambahkan satu baris kode ke file index.php Anda untuk memungkinkan Drupal berjalan dengan lebih banyak memori daripada pengaturan default:
Tambahkan kode di atas pada baris setelah? Php di file /drupal/index.php Anda. Jika semuanya mulai berfungsi dengan baik, maka Anda dapat mengidentifikasi apa yang menyebabkan masalah memori (sangat mungkin itu adalah modul).
Nonaktifkan modul, dan kemudian komentar ini_set ('memory_limit', '256M'); dan lihat apakah sudah dimuat sekarang.
Tidak disarankan untuk meninggalkan ini_set ('memory_limit', '256M'); ada di tempat sebagai solusi, tetapi setidaknya dapat memungkinkan Anda untuk masuk ke halaman daftar modul Anda.
Anda mungkin perlu melakukan debug_backtrace () untuk menentukan apa yang menggunakan memori.
sumber
index.php
adalah ide yang buruk (bahkan sementara, karena kebanyakan orang malas untuk menghapusnya nanti jika ini berfungsi), lebih baik untuk menempelkannya langsung ke file pengaturan Anda.Kesalahan:
Untuk mengkonversi byte X ke MB, bagi dengan 1024 * 1024 atau periksa di Wolfram .
terjadi ketika PHP mencoba mengalokasikan byte Y, tetapi ada batas keras pada X byte yang ditetapkan oleh
memory_limit
pengaturan konfigurasi PHP .Batas saat ini dapat diperiksa dengan masuk ke Administrasi »Laporan» Laporan Status »PHP (URL:)
/admin/reports/status/php
atau dengan mencetakini_get('memory_limit')
dalam PHP (perhatikan bahwa batasnya berbeda untuk UI dan CLI).Untuk memperbaikinya, Anda perlu menurunkan penggunaan sumber daya Anda, misalnya:
menonaktifkan modul pengembangan yang saat ini tidak Anda gunakan (disarankan),
Ini termasuk: Devel, Devel Themer (jika diaktifkan).
nonaktifkan semua modul yang tidak Anda gunakan,
nonaktifkan variabel debug tertentu yang dapat berdampak pada sumber daya memori Anda, misalnya beberapa contoh dengan
drush
:nonaktifkan ekstensi PHP tertentu, seperti XDebug,
memory_limit
konfigurasi PHP Anda .Jika Anda memutuskan untuk meningkatkan batas memori, banyak orang di sini menyarankan untuk benar-benar meretas inti Anda dengan menempelkan kode PHP ke Anda
index.php
untuk meningkatkan memori PHP Anda - jangan pernah lakukan itu ! Ini praktik yang sangat buruk.Alih-alih mengedit
settings.php
(atausettings.local.php
jika Anda memasukkannya) dan rekatkan kode berikut di sana di bagian akhir:atau cara yang lebih baik untuk melakukan ini adalah mengedit file konfigurasi PHP Anda (
php.ini
) dan mengubah baris berikut:Jika Anda tidak yakin di mana Anda berada
php.ini
, periksa dengan:drush status
perintah/admin/reports/status/php
.Untuk menyelidiki lebih lanjut halaman / komponen mana yang paling banyak menggunakan memori, Anda memiliki kemungkinan berikut:
xdebug.profiler_enable=1
) atau XHProf ,Untuk informasi lebih lanjut, periksa:
drush
, periksa: Memori Habis dengan Drush di DA.SEsumber
memory_limit
. Saya memiliki masalah yang dilaporkan hanya dengandrush
tepat karena saya memiliki kesalahan/etc/php/7.0/cli/php.ini
tetapi tidak dalam/etc/php/7.0/cli/php.ini
, jadi UI drupal bekerja dengan baik. Terima kasih!Anda dapat menggunakan modul untuk mengontrol batas memori ini. Modul PHP Runtime Configurator menyediakan banyak opsi untuk dikonfigurasikan tanpa mengubah file php.ini Anda dan restart Apache.
Anda dapat mengkonfigurasi parameter berikut:
sumber