1

这对我来说看起来很奇怪,可能是我遗漏了一些明显的东西。以下是一个示例 tinyurl:

http://tinyurl.com/67lwfe

它适用于我的浏览器,可以正确重定向到所需的页面。但是当我尝试使用 curl 时,如下所示:

curl -I http://tinyurl.com/67lwfe

它响应 200 而不是 3xx 响应。我认为该页面可能会使用元刷新 html 标记进行响应,所以我尝试了:

curl http://tinyurl.com/67lwfe

但它响应空白,没有 html 或元刷新标签。所以我的问题是浏览器如何知道正确重定向?我也尝试过设置浏览器代理,但没有成功。我错过了一些明显的东西吗?

4

2 回答 2

2

这是一个老问题,但我想我会更新答案,因为我今天遇到这个问题并首先来到这里。

-L 标志跟随重定向。这适用于 Centos 6、Centos 7 和 OSX 10:

curl -L http://mytinyurl.com/67lwfe -o marketing.html

抱歉,SO 显然不喜欢 tinyurl。

于 2018-02-01T20:18:59.437 回答
1

tinyurl 似乎<meta http-equiv="Refresh">最初为 200 提供服务,然后在一段时间后为后续请求提供 301 服务,因此它可以设置 cookie(其中两个!),运行大量跟踪脚本,并且通常会减慢人们的速度。

也就是说,tinyurl 很烂,所有的 URL 缩短器也是如此。好问题。

于 2014-08-18T03:54:51.800 回答