2012-02-01 58 views
0

我的问题很简单,但我还没有找到解决方案。我有一个文件夹,其中包含以pdf,doc和docx格式存储的上传简历。管理后台页面显示每个用户的简历链接。如果单击链接到pdf或doc文件被下载/打开,但如果单击指向docx的链接,则会显示404错误页面,并且如果将文件保存到桌面,并且打开的文字表示它已损坏,无法被打开。所有文件都可以在Web服务器上打开。正在检索.docx文件

比使用代码来下载文件相反,我的链接如下所示:http://www.site.com/test/resume/John_Doe_Resume.docx

我敢肯定有一个简单的办法。有其他人遇到这个问题吗?

+1

你能后的代码是服务于您的docx文件的功能? – 2012-02-01 00:31:54

+0

假设文档很好,你有MS-Word或(阅读器)兼容版本吗?你从IE浏览器试过这个吗? – NoChance 2012-02-01 00:34:47

+0

看起来像一个配置问题...确保您没有为IIS中的.docx扩展名配置一个特殊的处理程序 – 2012-02-01 00:34:53

回答

3

确保.DOCX已MIME类型的IIS的名单已成立:

Configure MIME Types (IIS 6.0)

IIS(7也对这个问题)会给出一个404错误,如果它不知道MIME类型对应于文件扩展名。如果它不存在(和它是不是默认的IIS 6),添加.DOCX用MIME类型的

application/vnd.openxmlformats-officedocument.wordprocessingml.document 
+0

它实际上没有在IIS中设置。我将它添加到application/msword类型的MIME类型中。它仍然给出了404。我是新来的IIS,可能会丢失一步 – Robo 2012-02-01 00:43:31

+0

MIME类型不应该导致404错误。还有其他的错误。 – 2012-02-01 00:45:21

+0

IIS可能需要重新启动。请注意,这将删除所有连接等,因此不要在生产服务器上“只是这样做”。从MSDN(长时间接触IIS 6)开始:在IIS管理器中,右键单击本地计算机,指向**所有任务**,然后单击**重新启动IIS **。在**你希望IIS做什么**列表中,单击重新启动Internet服务* computername *。 – JimmiTh 2012-02-01 00:49:54

1

我敢打赌,框架将.docx扩展名视为一种可执行文件;代码或IIS试图执行它,失败。

检查您的IIS配置文件扩展名执行,您的web.config和/或您的应用程序的路由表,我敢打赌,答案是在那里。