【问题标题】:IIS to handle request transfer to other server (without url rewrite)IIS 处理向其他服务器的请求传输(无需 url 重写)
【发布时间】:2013-12-05 05:38:33
【问题描述】:

我希望我的网站通过不同的服务器提供静态内容,如果可能的话,甚至可以从另一台服务器提供 javascripts 文件。我知道它可以使用 url rewrites 来实现,但它会给出 301 错误(即额外往返浏览器)。我问了类似的问题here,但没有得到任何满意的答复,因为我的问题似乎不正确。

有人可以建议如何在不额外往返浏览器的情况下实现这一目标吗?我已经看到其他团队在 Apache 服务器中实现了这一点,但无法在 IIS 中找到如何做到这一点。

【问题讨论】:

    标签: asp.net iis httpmodule


    【解决方案1】:

    您是否尝试过“重写”而不是“重定向”?这些是至少两个可行的重写选项,其中 Redirect 表示 301/302 和 rewrite 在服务器上静默运行。

    从您的另一个问题来看,您似乎尝试使用“重定向”,这解释了 301。然后将重定向更改为重写。

    唯一重要的是,如果您希望在不同服务器之间进行重写,则需要在前端服务器上安装 ARR(应用程序请求路由)。虽然 URL 重写只处理本地重写,但 ARR 可以充当其他服务器的透明代理。

    ARR 是 IIS 的免费插件

    http://www.iis.net/downloads/microsoft/application-request-routing

    【讨论】:

    • 我尝试将其更改为重写,但它不再提供任何内容(出现 404 错误)。还有其他建议吗?
    • 重写只能在同一台服务器下工作。如果您需要将请求重写到另一台服务器,您需要一个代理,而不是 url 重写。 ARR 是您要寻找的代理。
    猜你喜欢
    • 1970-01-01
    • 2016-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-31
    • 1970-01-01
    • 1970-01-01
    • 2017-12-08
    相关资源
    最近更新 更多