我有很多域名(www.vf1.com,www.vf2.com,www.vf3.com等)都指向我的主域名(www.vf.com)。如何从这些其他域重定向到我的主域名?
因此,如果有人访问www.vf1.com/news/1234,他们应该被重定向到www.vf.com/news/1234
我还有images.vf.com,css.vf.com和js.vf.com这样的域名,我不需要重定向
我在IIS上使用ColdFusion 8(但目前我无权访问IIS)
我在http://www.festivalreviews.co.uk/latest/news/14500等网址上尝试了以下内容,但会重定向到http://www.virtualfestivals.com/index.cfm
<cfif cgi.http_host IS 'www.festivalreviews.co.uk'>
<cfset jjURL = 'http://www.virtualfestivals.com' & CGI.PATH_INFO>
<cfheader statuscode="301" statustext="Moved Permanently">
<cfheader name="Location" value="#jjURL#">
</cfif>
由于
答案 0 :(得分:1)
我同意Adam,如果可能的话,使用您的网络服务器可能会更好。话虽如此,我过去不得不用ColdFusion做类似的事情。当我需要重建URL时,我通常使用与您尝试的不同的CGI变量。看看这是否适合你。
<cfif CGI.SERVER_NAME IS 'www.festivalreviews.co.uk'>
<cfset jjURL = 'http://www.virtualfestivals.com' & CGI.SCRIPT_NAME>
<cfif CGI.QUERY_STRING NEQ ''>
<cfset jjURL = jjURL & '?' & CGI.QUERY_STRING>
</cfif>
<cfheader statuscode="301" statustext="Moved Permanently">
<cfheader name="Location" value="#jjURL#">
</cfif>
CGI.SERVER_NAME
- 服务器的主机名,DNS别名或IP地址
CGI.SCRIPT_NAME
- 正在执行的脚本的虚拟路径
CGI.QUERY_STRING
- 查询后面的信息?在引用此脚本的URL中
您可以在documentation here中了解有关CGI变量的更多信息。
答案 1 :(得分:0)
从ColdFusion 8开始,我使用&lt; cflocation&gt; (因为CF8为这些重定向添加了statusCode属性)。
<cfif CGI.SERVER_NAME EQ 'www.festivalreviews.co.uk'>
<cfset jjURL = 'http://www.virtualfestivals.com' & CGI.SCRIPT_NAME>
<cfif CGI.QUERY_STRING NEQ ''>
<cfset jjURL = jjURL & '?' & CGI.QUERY_STRING>
</cfif>
<cflocation url="#jjURL#" addtoken="no" statuscode="301">
</cfif>
&LT; cflocation&GT;文档:https://wikidocs.adobe.com/wiki/display/coldfusionen/cflocation