網(wǎng)站訪問(wèn)文件后綴為“.svg”的文件(如:test.svg),默認(rèn)情況下返回“404找不到文件”的錯(cuò)誤提示,這是因?yàn)閣eb服務(wù)器默認(rèn)不能解析svg文件的原因。要使svg文件能被正常訪問(wèn)打開(kāi),就要設(shè)置一下web服務(wù)器的配置文件,如果web服務(wù)器是IIS,那么就要設(shè)置一下IIS管理器。本文介紹IIS如何配置使svg文件能被正常訪問(wèn)。
首先,打開(kāi)IIS管理器,在網(wǎng)站屬性窗口切換到“HTTP頭”標(biāo)簽,然后點(diǎn)擊“MIME 類(lèi)型”按鈕。
點(diǎn)擊“新建”按鈕,擴(kuò)展名輸入“.svg”,MIME類(lèi)型輸入“image/svg+xml”,然后點(diǎn)擊“確定”按鈕。
添加svg的MIME類(lèi)型
添加完后,就立即可以訪問(wèn)擴(kuò)展名為“.svg”的文件了。
方法二:在Web.Config 中添加配置節(jié)點(diǎn),手工映射。
前文是在IIS管理器里配置支持SVG文件的訪問(wèn),但如果是虛擬主機(jī),你沒(méi)有IIS管理器的配置權(quán)限怎么辦呢?這里介紹另一種方法,那就是在Web.Config 中添加配置節(jié)點(diǎn),手工映射。
在WebServer節(jié)點(diǎn)里添加:
<staticContent>
<remove fileExtension=".svg" />
<mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
</staticContent>
說(shuō)明, <staticContent>...</staticContent>
整塊代碼一定要放到 <system.webServer>...</system.webServer>
里面。
下面是一個(gè)完整的web.config代碼:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<connectionStrings>
<add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
</system.web>
<system.webServer>
<staticContent>
<remove fileExtension=".svg" />
<mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
</staticContent>
</system.webServer>
</configuration>
要注意的是, <system.webServer>...</system.webServer>
與 <system.web>...</system.web>
是并列的代碼塊,相互不能被包含。
這樣配置后,也可以訪問(wèn)網(wǎng)站的SVG文件。