在我的ColdFusion应用程序中,我想将图像保留在wwwroot之外的此文件夹中:C:\ extSite \ stdImages
我在wwwroot \ WEB-INF \ jrun-web.xml中创建了一个映射,如下所示:
<virtual-mapping>
<resource-path>/extStdImages</resource-path>
<system-path>C:\extSite\stdImages\</system-path>
</virtual-mapping>
要显示图像,请执行以下操作:
<img src="/extStdImages/abc.jpg">
这在我的开发站点(使用ColdFusion的内置Web服务器)上工作正常,但图像不会显示在生产中(我使用的是IIS)。我想知道是否必须在IIS或生产服务器上的其他地方调整某些内容以允许访问这些文件。
有人可以帮忙吗?提前谢谢!
彼得
答案 0 :(得分:4)
在iis中,您需要创建一个指向images文件夹的虚拟目录。虽然将图像放在wwwroot之外是没有意义的,因为它们必须是Web可访问的,以便它们显示在网页上。这样做的唯一原因是。如果您使用密码保护版权图像,而不是直接链接到它们。
答案 1 :(得分:2)
如果你在IIS上,你可能想看看你的web.config
http://www.iis.net/configreference/system.applicationhost/sites/site/application/virtualdirectory
这是一个示例:
<site name="Contoso" id="2" serverAutoStart="true">
<application path="/">
<virtualDirectory path="/" physicalPath="C:\Contoso\Content" />
</application>
<application path="/CRM">
<virtualDirectory path="/" physicalPath="C:\Contoso\Content\CRM" />
<virtualDirectory path="/Images" physicalPath="E:\Images" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:80:www.contoso.com" />
</bindings>
</site>
答案 2 :(得分:0)
这是错误的C:\ extSite \ stdImages \ CF必须使用斜杠而不是反斜杠 这是正确的,适用于C:/ extSite / stdImages /