Довольно часто, когда вы получаете WSOD (белый экран смерти) , это происходит из-за фатальной ошибки и не отображается на стандартном выводе - то есть сгенерированной странице.
Чтобы он отображался, вам необходимо:
Самый простой способ - сделать это наверху вашего PHP-скрипта с помощью некоторой части кода, подобной этой:
error_reporting(E_ALL);
ini_set('display_errors', 'On');
В вашем конкретном случае вы пытаетесь включить / потребовать что-то через HTTP; который часто отключается.
См. Об этом директиву allow_url_include
.
Можно было бы включить его в конфигурации вашего PHP ... Но обычно это не считается хорошей идеей: он отключен по соображениям безопасности.
А отправка HTTP-запроса на включение файла происходит медленно - и это означает, что ваше приложение больше не будет работать, если удаленный сервер не отвечает!
Кроме того, здесь вы пытаетесь включить файл с удаленного сервера, который $_SERVER["HTTP_HOST"]
...
... Итак, вы пытаетесь включить файл с удаленного сервера, который на самом деле является вашим собственным сервером? то есть не удаленный?
Если это так, вы не должны пытаться включить через HTTP; вместо этого вы должны работать с локальным файлом; таким образом (потребуется настройка) :
require_once dirname(__FILE__) . "/dompdf/dompdf_config.inc.php";
Таким образом:
- Нет сетевого ненужного запроса (вы будете просто читать с локального диска) => быстрее и безопаснее
- И не нужно включать
allow_url_include
Я также должен добавить:
- При включении локального файла .php содержимое файла .php включается на вашу страницу; например, если он скопирован
- При включении файла .php через HTTP, есть вероятность, что удаленный сервер будет интерпретировать код PHP и только отправит вам выходные данные обратно.
- Это означает, что это не PHP-код, который будет включен вашим скриптом
- Но только результат, который вы получите, выполнив этот код PHP!