2016-01-25 1 views
1

Я не могу настроить целевые файлы вне папки dompdf, я понял, что мне нужно установить $dompdf->set_option('isRemoteEnabled', true); , чтобы позволить скрипту обрабатывать другие страницы на сайте, но все равно не повезло. Это мой код до сих пор;Загрузка dompdf из подпапки

$dompdf = new DOMPDF; 
$dompdf->set_option('isRemoteEnabled', true); 
$html = file_get_contents("http://www.example.com/test.html"); 
$dompdf->load_html($html); 
$dompdf->setPaper('A4', 'portrait'); 
$dompdf->render(); 
$pdf = $dompdf->output(); 
$dompdf->stream('test'); 

Это дает следующий результат:

Предупреждение: file_get_contents (http://www.example.com/test.html): не удалось открыть поток: HTTP запрос не удалось! HTTP/1.1 403 Forbidden в /home/sites/www.example.com/web/wp-content/plugins/example/incl/dompdf.php на линии 40

неустранимая ошибка: неперехваченное исключение «DOMPDF \ Exception 'с сообщением «Запрошенный HTML-документ не содержит данных». в /home/sites/www.example.com/web/wp-content/plugins/example/incl/dompdf/src/Frame/FrameTree.php:146 Трассировка стека: # 0 /home/sites/www. example.com/web/wp-content/plugins/example/incl/dompdf/src/Dompdf.php(572): Dompdf \ Frame \ FrameTree-> build_tree() # 1 /home/sites/www.example. com/web/wp-content/plugins/example/incl/dompdf/src/Dompdf.php (722): Dompdf \ Dompdf-> processHtml() # 2 /home/sites/www.example.com/web/ wp-content/plugins/example/incl/dompdf.php (43): Dompdf \ Dompdf-> render() # 3 {main} брошен в /home/sites/www.example.com/web/wp-content /plugins/example/incl/dompdf/src/Frame/FrameTree.php on line 146

Вызванный test.html существует и доступен браузеру. Если я заменю этот URL с чем-то другим, как Google или Yahoo, он также работает. Что мне не хватает, это проблема конфигурации сервера?

ответ

0

Я был неправ, код работает. На сервере разработки были запрошены блокировки htaccess:

SetEnvIfNoCase User-Agent ^$ keep_out 
SetEnvIfNoCase User-Agent (pycurl|casper|cmsworldmap|diavol|dotbot) keep_out 
SetEnvIfNoCase User-Agent (flicky|ia_archiver|kmccrew) keep_out 
SetEnvIfNoCase User-Agent (purebot|comodo|feedfinder|planetwork) keep_out 
Order Allow,Deny 
Allow from all 
Deny from env=keep_out 

Удалено, и это сработало. Должно быть в понедельник.