2016-01-18 102 views
0

我正在使用TCPDF庫。我有兩臺機器,一臺是Debian Testing,另一臺是Ubuntu 15.10。我開發了一個生成PDF報告的類,但是我遇到了一個問題,當我在Debian主機上測試它時,一切都很完美:閱讀pdf文件的權限

1-我在/var/www中創建了一個名爲「pdf」的文件夾。沒:sudo chown -R www-data:user /var/www/pdf 3-生成PDF文件,我獲得:

-rw-r--r-- 1 www-data www-data 76113 ene 18 09:53 out.pdf 

4-文件夾具有:

drwxr-xr-x 2 www-data user 4096 ene 18 09:53 pdf 

我使用:

const base_path = '/var/www'; 
$pdf->Output(self::base_path . '/pdf/out.pdf', 'F'); 

顯示它在iFrame中:

<iframe width="100%" height="500" frameborder="0" allowfullscreen="true" src="/var/www/pdf/out.pdf" name="iFrameName" id="iframeID"></iframe> 

我複製了整個項目的Ubuntu的主機,但顯示在瀏覽器中的PDF文件,我得到這個錯誤:

Forbidden 
You don't have permission to access /var/www/pdf/out.pdf on this server. 

Altought我有以下文件設置:

-rw-r--r-- 1 www-data www-data 76113 ene 18 12:06 out.pdf 

而該文件夾有:

drwxrwxr-x 2 www-data ubuntu-user 4096 ene 18 09:53 pdf 

我懷疑這個錯誤是在apache設置裏面,我在Ubuntu上丟失了。

回答

0

它的工作原理。

我不得不添加:

<Directory /var/www/pdf> 
    Options Indexes FollowSymLinks 
    AllowOverride All 
    Require all granted 
</Directory> 

apache2.conf

1

更改ifreme到u總是跳過你DOCUMENT_ROOT路徑

<iframe width="100%" height="500" frameborder="0" allowfullscreen="true" src="/pdf/out.pdf" name="iFrameName" id="iframeID"></iframe> 
+0

沒有工作。獲取錯誤的答案是:'http://localhost/pdf/out.pdf',但pdf文件位於'/ var/www/pdf'中。 – FacundoGFlores