【问题标题】:Using CF to detect if URL is index.cfm or /使用 CF 检测 URL 是 index.cfm 还是 /
【发布时间】:2014-06-13 20:08:15
【问题描述】:

我不确定这是否可能使用 CGI 范围,但我想做的是检测用户是否正在浏览 /index.cfm/ 的页面。

如果它是 /index.cfm,我想做一个 301 重定向到 /

我查看了 CGI 和 URL 范围的转储,但看不到任何基于此的简单重定向方法。

非常感谢任何想法。

我们正在使用 ColdFusion 10。

【问题讨论】:

    标签: iis coldfusion http-status-code-301


    【解决方案1】:

    只是一个想法:为什么不使用 Microsoft http://www.iis.net/downloads/microsoft/url-rewrite 的重写模块并执行类似的操作

    ^/index.cfm / [L,R=301]

    【讨论】:

      【解决方案2】:

      在 CF 中你可以这样尝试:

      <cfif listlast(cgi.script_name, "/") eq "index.cfm">
        <cflocation url="redirectlogin.cfm" addtoken="no" statuscode="301">
      </cfif>
      

      【讨论】:

      • 或者如果URL中也有某些条件,你也可以使用contains而不是EQ
      • 我发现在我们的案例中,我们将所有流量路由到 index.cfm 作为整个应用程序的主要调用者,该字段始终填充有 index.cfm。我应该在我原来的问题中发布。不过还是谢谢
      【解决方案3】:

      因为我们使用的是IIS,所以我们应用了这个

        <cfset stHttpRequestData = getHttpRequestData()>
        <cfif stHttpRequestData.headers["X-REWRITE-URL"] IS "/index.cfm">
            <cflocation url="http://www.domainname.com/" addtoken="no" statuscode="301">
        </cfif>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-02-09
        • 2014-07-11
        • 2011-11-05
        • 1970-01-01
        • 1970-01-01
        • 2015-04-05
        • 2017-05-13
        • 2015-08-05
        相关资源
        最近更新 更多