You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

curl返回HTTP 404但页面可访问的问题排查求助

问题分析与解决方法

以下是针对curl脚本返回404但Python requests返回200问题的排查方向和解决办法:

  • 请求头差异
    requests默认会发送符合浏览器规范的User-Agent等请求头,而curl默认的User-Agent是curl/[版本号],部分网站会根据请求头返回不同内容甚至404。给curl添加模拟浏览器的请求头即可:

    # 修改后的脚本,添加User-Agent参数
    #!/bin/sh
    echo $(curl -sSLk -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36" -w '%{http_code}' -o /dev/null "$1" 2> /dev/null)
    
  • URL传递的shell解析问题
    如果目标URL包含特殊字符(如&、空格),直接用$1传递会被shell拆分解析,导致请求的URL不完整。将脚本中的$1改为"$1",确保URL被完整传递。

  • 查看curl详细请求过程
    去掉-s静默参数,查看curl的完整请求日志,确认是否存在重定向异常或中间步骤返回404:

    curl -SLk -w '%{http_code}' -o /dev/null https://something/login.html
    
  • Cookie或会话验证差异
    若浏览器访问时依赖已保存的Cookie,可尝试将浏览器的Cookie复制到curl请求中测试:

    curl -sSLk -b "your_cookie_key=your_cookie_value" -w '%{http_code}' -o /dev/null https://something/login.html
    

内容的提问来源于stack exchange,提问作者watchdog

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 20:42:33