2014-02-12 98 views
0

我有一個純文本頁面,其中包含一些二進制數據(大部分數據是文本),如等。我將Content-Type標頭設置爲text/plain,並設置X- Content-Type-Options給nosniff。這會阻止Google Chrome和Internet Explorer下載頁面,而是顯示它。但由於某種原因,Firefox會判定該頁面需要下載。Firefox下載文本/純文本而不是顯示它

header("content-type: text/plain; charset=UTF-8"); 
header("X-Content-Type-Options: nosniff"); 
header("Content-Disposition: inline"); 

必須添加什麼頭阻止下載一個頁面,而不是顯示它的Firefox?

編輯:

我試過內容處置:內聯

一個例子:http://nnmm.nl/?5eT0D

回答

3

我固定它通過設置以下標題:

header("content-type: text/plain; charset=UTF-8; imeanit=yes"); 
header("X-Content-Type-Options: nosniff"); 
0

你可以發佈更完整的測試案例?我無法在Firefox 29中使用輸出中包含相同的兩個標題和「\ 003」的示例PHP文件重現此問題。

更新:Firefox不支持X-Content-Type-Options,儘管bug 471020有一個長期的請求,並且去年開始了一些工作。據我所知,除非修正了這個bug,否則無法覆蓋Firefox中的文本/純文件的Content-Type嗅探。

你期望瀏覽器顯示文檔中的非打印字符嗎?在將文檔發送到瀏覽器之前,您是否可以通過剝離服務器上的控制字符來獲得所需的結果?

+0

http://nnmm.nl/?5eT0D是一個很好的例子。只要看看響應頭文件以及firefox試圖用它們做什麼。 – Mechazawa

+0

所以你想顯示這些文件? –

+0

一個選項可能是通過PHP回顯整個內容 –

相關問題