首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cfm脚本的重定向代码

cfm脚本的重定向代码
EN

Stack Overflow用户
提问于 2009-12-16 11:36:12
回答 1查看 725关注 0票数 0

我需要一个CFM脚本放在我的网站主页上。

如果访问者从搜索引擎使用某个搜索短语到达,我希望将他们重定向到不同的页面。

例如:

以下搜索将重定向到以下页面:

成为一名商业教练-> http://www.businesscoach.com/BusinessCoaching.html

找一位商业教练-> http://www.businesscoach.com/go/bc/find-a-business-coach/index.cfm

请帮我做这件事。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-12-16 19:35:24

首先,您需要分析referer字符串,如果不为空的话。这可以通过不同的方式来完成。

考虑一下这个类似Google的字符串:

代码语言:javascript
复制
<p><a href="referer.cfm?q=become+a+business+coach&ie=utf-8&oe=utf-8">test</a></p>

Same referer.cfm应执行检查。

比方说,最简单且完全不灵活的方法是通过referer进行搜索:

代码语言:javascript
复制
<cfif cgi.HTTP_REFERER NEQ ""
      AND FindNoCase("business", cgi.HTTP_REFERER)
      AND FindNoCase("coach", cgi.HTTP_REFERER)>

    <cflocation url="http://where.you.want.to.go.tld/" addtoken="false">

</cfif>

更高级的方法可以是通过搜索查询关键字进行搜索。首先,您应该拆分字符串:

代码语言:javascript
复制
<cfif cgi.HTTP_REFERER NEQ "">

    <!--- extract the search phrase --->
    <cfloop list="#cgi.HTTP_REFERER#" delimiters="&" index="token">

        <cfif FindNoCase("?q=", token)>

            <cfset phrase = ListLast(token, "?q=") />

            <!--- extract the keywords --->
            <cfloop list="#phrase#" delimiters="+" index="keyword">

                <!--- search needed keyword and perform relocation --->

            </cfloop>

        </cfif>

    </cfloop>

</cfif>

如何搜索关键字--取决于您,可能会查询数据库并搜索匹配项,也可能会直接在代码中创建配置。在这两种方式中,我都使用了一组结构,如下面的示例:

代码语言:javascript
复制
<cfset rule = StructNew() />
<cfset rule["keywords"] = "become,business,coach" />
<cfset rule["url"] = "http://where.you.want.to.go.tld/" />

关键字与搜索短语匹配时,使用url进行重新定位。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1912101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档