2010-02-19 89 views
4

我有我的asp.net 3.5網絡應用程序中的幾個PNG文件。在dev中正確顯示圖像;但是,當我在服務器上加載應用程序時,不顯示png文件。我正在使用w2k8和iis。當我從同一目錄(jpg)服務另一個圖像文件時,它可以工作。有什麼我失蹤與PNG文件?PNG文件不顯示

+0

是否有爲PNG設置的MIME類型?該文件是否具有正確的權限?如果你直接導航到文件/file.png你會得到什麼錯誤? – LiamB 2010-02-19 08:46:22

+1

該網站是否公開?如果是這樣,請發佈無法顯示的PNG鏈接,以便我們查看HTTP標頭是否提供了有關此問題的任何詳細信息。 – 2010-02-19 08:48:41

+0

@Bernhard Hofmann:好的建議 – LiamB 2010-02-19 08:51:12

回答

2

這聽起來像是一個權限問題。你有沒有檢查過其中一個PNG文件的權限,以確定它們可以被所有人閱讀?

如果您可以直接訪問服務器,如果您在服務器上使用瀏覽器並訪問本地站點,是否可以看到圖像? http://localhost/

你可以嘗試直接通過瀏覽器的URL查看PNG嗎?我的意思是輸入完整的URL到PNG本身,而不是顯示PNG的頁面。例如http://sstatic.net/so/img/logo.png

+0

看起來每個人都有閱讀權限。當我嘗試在IE中查看文件時,它會嘗試下載它而不是顯示它。我認爲這是一個很大的線索 - 但我不知道該怎麼辦 – mson 2010-02-19 13:29:22

+0

ok - 文件被加密......不知道爲什麼一個PNG被加密,但刪除加密解決了問題。 – mson 2010-02-19 13:54:48

0

很晚但可能不是錯誤的解決方案: 如果您將.jpg重命名爲.png,它將不會顯示在Microsoft的瀏覽器中。 如果您在Paint中再次保存文件,它將更改MIME類型或文件頭,因此它會在更改後加載。

你可以很容易地測試:

  • 重命名爲.jpg文件,.png格式
  • 加載頁面:圖像被打破
  • 將文件保存爲巴紐現在
  • 負載該頁面:圖片將立即加載