检查URL是否仍处于活动状态或永久移动

时间:2012-02-16 14:29:32

标签: coldfusion

有没有办法检查网址是否仍然有效或是否使用chhttp返回301重定向代码?

2 个答案:

答案 0 :(得分:10)

您已回答了自己的问题 - 使用CFHTTP。

<cfhttp method="head" url="http://www.google.com" result="myResult">
<cfdump var="#myResult#">

您将看到myResult结构包含“Responseheader”结构,其中包含“Status_Code”字段。它将包含数字状态代码。 如果你不需要数字,你可以使用myResult.Statuscode - 返回类似“200 OK”的内容。

如果网址不正确或者到达目标会出现问题,则“Responseheader”将为空。

评论后的附录:

如果您想在301之后知道重定向位置,请使用带跟踪或选项的CFHTTP作为方法。

<cfhttp method="trace" url="http://www.google.com" result="myResult">

结果应该包含上面的“Status_Code”以及“Location” - 重定向到的URL。

答案 1 :(得分:1)

您必须在cfhttp标记中使用重定向属性(例如redirect =“false”)。然后,您将获得原始响应,并可以确定将哪些http代码发送回您的请求。