如何将自定义响应头设置为IIS中的应用程序虚拟目录



我的Default Web Site中有SMData应用程序。我在SMData应用程序中添加了attachments虚拟目录。现在我想为attachment虚拟目录设置Content-Disposition头。我试过了,但是没有成功:

SET XXXsiteNameXXX=Default Web Site
SET XXXappNameXXX=SMData
appcmd set config "%XXXsiteNameXXX%/%XXXappNameXXX%/attachments" -section:system.webServer/httpProtocol /+"customHeaders.[name='Content-Disposition',value='attachment']"

显示错误:

应用配置更改到节"系统。webServer/httpProtocol" for "MA CHINE/WEBROOT/APPHOST/Default"网站/SMData/附件"在配置通信路径"MACHINE/WEBROOT/APPHOST/Default website/SMData/attachments"错误(hresult:80070003, message: commit configuration changes失败。的系统无法找到指定的路径。

我发现问题了。我用下面的代码创建了一个虚拟目录:

SET XXXtaskDocumentsPathXXX="C:/docs"
%systemroot%/system32/inetsrv/APPCMD add vdir /app.name:"%XXXsiteNameXXX%/%XXXappNameXXX%" /path:"/attachments" /physicalPath:%XXXtaskDocumentsPathXXX%

问题是在/路径。Appcmd在创建虚拟目录时不会将其转换为。结果创建web.config是失败的。我把它改成反斜杠,一切都开始工作了

最新更新