我试图配置我们的IIS服务器以将用户重定向到另一个站点而不是404页面。
首先,问题的标题可能不正确,但我不知道如何要求它。
这是这笔交易:
所有这一切都在IIS 7.5中完成,我不知道URL Rewrite是否是正确的工具,我还没有在SO或者互联网上找到任何东西,所以我不知道。我找到了一个IIS Guru来教我实现这个目标的方法。
这是试图说明问题的图片:
这里是URL Rewrite的web.config部分
<rule name="CDocuments Rewrite" stopProcessing="true">
<match url=".?" />
<!--<match url="/cdocuments/(.*)?" />-->
<conditions trackAllCaptures="true">
<add input="{HTTP_HOST}" pattern="/cdocuments/(.*)?" />
<add input="{QUERY_STRING}" pattern="/cdocuments/(.*)?" />
</conditions>
<action type="Rewrite" url="http://192.168.172.226/filecheck/default.aspx?file={C:2}" appendQueryString="true" logRewrittenUrl="true" />
</rule>
非常感谢你们。
答案 0 :(得分:0)
我不认为IIS URLRewrite可以做到这一点。但您可以在&#34;文档&#34;上自定义您的404页面。目录,您可以在其中检查丢失的文件是否实际位于旧目录中,如果为true,则将用户重定向到新URL。您可能会在日志中看到许多404错误,这不太好。
为什么不在新硬盘上为新文档创建新目录,并保留旧文件的旧名称。旧链接仍然有效,您只需在新网址中发送链接即可。您实际上可以创建一些有意义的目录来管理您的文档,例如www.yourdomain / docs / 2015 / docufile.pdf。下一次升级将更容易。
或使用IIS重写
www.yourdomain.com/documents/fileno.pdf
到
www.yourdomain.com/docs/docfind.asp?fname=fileno.pdf
并编程docfind.asp以找到fileno.pdf并将用户重定向到真实文档URL
www.yourdomain.com/historydocuments/fileno.pdf
或
www.youdomain.com/newdocuments/fileno.pdf
asp或perl脚本可以快速轻松地完成。
规则应如下所示:
<rule name="cddocuments">
<match url="cddocuments/(.*)" />
<action type="Rewrite" url="http://192.168.172.226/filecheck/default.aspx?file={R:1}" />
</rule>
确保重命名旧文档目录。