在我们当前的项目中,我们设置了两个虚拟路径,一个用于图像,一个用于文件上传。虚拟路径从单独的服务器中提取图像和文件。我目前正在使用跨浏览器兼容性,Firefox似乎正在以不同于所有其他浏览器的方式阅读虚拟路径。好像它没有正确呈现URL。它们适用于Chrome,Safari和IE 7/8/9。
目前正在使用IIS 7
最终结果:
在这种情况下,用户可以看到他们上传的所有公开PDF的列表。然后,用户可以单击其中一个文件名,PDF将在新的选项卡/窗口中打开。
在IE,Chrome和Safari中,路径如下(正确):
http://localhost:1798/disclosures/bf1bb8bf-ef34-4c93-a4c3-540bab158644.pdf
然而,在Firefox中,它看起来像这样:
http://localhost:1798/Disclosure\disclosures\bf1bb8bf-ef34-4c93-a4c3-540bab158644.pdf
这是当前页面的网址:
http://localhost:1798/Disclosure/Disclosures?lenderProductID=19&lenderID=64
为什么它似乎试图将当前URL与虚拟路径组合在一起?当我点击其中一个PDF链接时,它会打开一个新的选项卡/窗口,但它会重新路由回到索引页面。
我不是最好的IIS,所以任何帮助将非常感谢!提前谢谢。
答案 0 :(得分:0)
您确定网址是否正确呈现?
我的直觉告诉我,IE,Chrome和Safari正在将反向斜杠转换为正斜杠。 FireFox没有这样做,这就是为什么它似乎在FireFox中被打破了。
答案 1 :(得分:0)
感谢大家的所有投入。在图像/文件路径中查看web.config后,我注意到一个愚蠢的错误,结果证明是我的问题的根源。
在web.config中,我在字符串中反斜杠而不是正斜杠。我猜Chrome,IE和Safari已正确转换它们,但Firefox在这方面要严格一些。
以下是我在<appSettings>
中找到的两个文件路径:
<add key="ImagePath" value="\images\" />
<add key="DisclosurePath" value="\disclosures\" />
但是,它们看起来应该是这样的:
<add key="ImagePath" value="/images/" />
<add key="DisclosurePath" value="/disclosures/" />
感谢大家!现在我可以不停地敲打头,戴上我的Dunce帽! : - )