2017-04-06 60 views
1

我不斷收到偶然的出錯:的Symfony2:KnpSnappy捆綁 - 嘗試訪問緩存文件爲http://

錯誤:無法加載頁面http:///home/livesmartbureau/var/cache/prod/snappy/knp_snappy58e64e79602c84.27350345.html(有時它會工作只是忽略這個錯誤與--load - 錯誤 - 處理忽略),代碼1 退出由於網絡錯誤:HostNotFoundError

它試圖訪問其自身的緩存文件(它寫),通過預先待定的HTTP://

我config.yml如下:

knp_snappy: 
    pdf: 
     enabled: true 
     binary: /usr/local/bin/wkhtmltopdf 
     options: [] 
    image: 
     enabled: true 
     binary: /usr/local/bin/wkhtmltopdf 
     options: [] 
    temporary_folder: "%kernel.cache_dir%/snappy" 

控制器代碼:

$content = $this->render('Trace/traceHistoryDetails.html.twig',array(
    'history' => $_SESSION['trace_history'], 
    'view' => 'PDF' 
))->getContent(); 
$pdfGenerator = $this->get('knp_snappy.pdf'); 
$pdfGenerator->getInternalGenerator()->setTimeout(120); 
return new Response($pdfGenerator->getOutputFromHtml($content), 200, array(
    'Content-Type' => 'application/pdf', 
    'Content-Disposition' => 'attachment; filename="search_history.pdf"' 
)); 

我試圖臨時文件夾加上引號,和不帶引號。我嘗試了各種不同的臨時文件夾。 「snappy」文件夾正在/ home/livesmartbureau/var/cache/prod中創建。

我已到處尋找解決方案,但我無法找到一個。這個問題偶爾會「間歇地」發生,而不是所有的時間,並且我無法檢測到它的工作方式和時間方式(內容大小似乎並不重要,因爲它有時會發生在第1頁的PDF和其他次10頁PDF的工作正常,相同的樹枝模板,只是更多的數據)。

回答

0

您可以試試renderView而不是render?所有的文件顯示,這就是我使用的:

$content = $this->renderView('Trace/traceHistoryDetails.html.twig',array(
    'history' => $_SESSION['trace_history'], 
    'view' => 'PDF' 
))->getContent(); 

我不確定它是否會有所作爲,但請嘗試。

+0

謝謝你的建議。我已經將'render'改爲'renderView'作爲建議(這也需要在最後刪除' - > getContent()',但方法)。不幸的是,這並沒有改變,問題依然存在。 – Magnanimity