symfony 使用curl检查301 http响应

beq87vna  于 2023-02-23  发布在  其他
关注(0)|答案(3)|浏览(121)

我正在迁移一个网站。我需要做的迁移600多个旧网址到一个新的类型的网址与symfony路由和301永久重定向。
我的网址之一的例子:

redirect_test-url:
    path: /test-url
    defaults:
        _controller: FrameworkBundle:Redirect:urlRedirect
        path: /category/test-url
        permanent: true

重定向似乎工作。但我需要确保我所有的旧网址重定向与301重定向。我想我可以做一个脚本与php和curl检查所有的网址。但我不知道如何才能得到curl的结果。
下面是我的卷发请求:

curl https://local.dev -k

但是我的终端机只给我回html。
我如何获得http状态码响应并将其存储在数据库中?

2w3kk1z5

2w3kk1z51#

您可以使用-D选项转储响应的标头:

curl -s -D - http://www.martar.fr -o /dev/null

回复:

HTTP/1.1 301 Moved Permanently
Date: Fri, 07 Oct 2016 07:50:51 GMT
Server: Apache/2.4.10 (Debian)
Location: https://www.martar.fr/
Content-Length: 309
Content-Type: text/html; charset=iso-8859-1

-s用于静默模式(不输出任何内容)

xam8gpfp

xam8gpfp2#

我想也许你想要类似的东西:

curl -sI https://example.com -w '%{response_code}:%{redirect_url}\n' -o /dev/null

作为奖励,这可以同时获得重定向代码和重定向目标(如果有的话)。

f0ofjuux

f0ofjuux3#

curl写出变量通常非常有用

curl -sI https://duravit.de -w '%{response_code}:%{redirect_url}:%header{server}\n' -o /dev/null

https://everything.curl.dev/usingcurl/verbose/writeout#variables

相关问题