讲师中心 微信公众号
AI工具推荐 视频效率加速

短链接还原php超时怎么办_增加请求超时时间设置【说明】

冬瑶酱_1891

冬瑶酱_1891

发布时间:2026-01-03 20:19:33

|

655人浏览过

|

来源于php中文网

原创

cURL超时返回0表示本地请求超时而非服务器响应,需分别设置CURLOPT_CONNECTTIMEOUT(5~10秒)和CURLOPT_TIMEOUT(建议30秒起),并保留SSL验证、记录错误日志以精准定位阻塞点。

短链接还原php超时怎么办_增加请求超时时间设置【说明】

curl_getinfo 返回 0 表示请求超时,不是目标服务器返回 0

PHP 中用 curl_exec() 获取短链接跳转后的真实 URL 时,如果返回 false 且 curl_getinfo($ch, CURLINFO_HTTP_CODE) 是 0,基本可以断定是 cURL 本身超时,而非目标站返回了状态码 0。这时候不能去查对方服务是否异常,得先调高本地请求的等待上限。

设置 CURLOPT_TIMEOUT 和 CURLOPT_CONNECTTIMEOUT 要分开处理

短链跳转常涉及多次重定向(301/302),网络路径不可控,只设 CURLOPT_TIMEOUT 不够。必须同时控制连接建立阶段和整个请求生命周期:

CurlShip Directory Submission
CurlShip Directory Submission

向CurlShip提交产品,这是一个对机器人友好的SaaS目录。只需一条curl命令即可发布产品,支持OG标签抓取、带徽章的dofollow链接及层级升级。

下载
  • CURLOPT_CONNECTTIMEOUT:仅限制 TCP 连接建立时间,建议设为 5~10 秒,避免卡在 DNS 解析或防火墙拦截上
  • CURLOPT_TIMEOUT:总耗时上限,含重定向、SSL 握手、响应读取,建议从 30 起步,视业务容忍度调整
  • 若需兼容慢速网络或海外跳转,可额外启用 CURLOPT_FOLLOWLOCATION 并配 CURLOPT_MAXREDIRS(如 5),防止无限跳转拖垮超时逻辑

别忽略 CURLOPT_SSL_VERIFYPEER 和错误抑制的副作用

有些短链服务用自签名证书或旧 TLS 协议,盲目加 CURLOPT_SSL_VERIFYPEER => false 看似能“快点跑通”,实则可能掩盖真实超时原因——比如 SSL 握手失败后 cURL 会静默重试,叠加超时设置反而更难定位。建议:

  • 先保留证书验证,用 curl_error($ch) 检查是否报 SSL connect error 或 Unknown SSL protocol error
  • 确认是证书问题再临时禁用,并记录日志,而不是默认关闭
  • 避免用 @file_get_contents() 替代 cURL,它不支持细粒度超时,且无法获取跳转链路中的中间 URL
function resolveShortUrl($url) {
    $ch = curl_init();
    curl_setopt_array($ch, [
        CURLOPT_URL => $url,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HEADER => false,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_MAXREDIRS => 5,
        CURLOPT_CONNECTTIMEOUT => 10,
        CURLOPT_TIMEOUT => 30,
        CURLOPT_USERAGENT => 'Mozilla/5.0 (compatible; ShortUrlResolver/1.0)',
        CURLOPT_SSL_VERIFYPEER => true,
        CURLOPT_SSL_VERIFYHOST => 2,
    ]);
    $content = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    $redirectUrl = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
    $error = curl_error($ch);
    curl_close($ch);

    if ($content === false || $httpCode === 0) {
        throw new Exception("cURL failed: {$error} (HTTP code: {$httpCode})");
    }

    return $redirectUrl;
}
超时不是越设越大就越稳,关键是把连接、握手、重定向、响应各阶段的阻塞点拆开看;很多“还原失败”实际卡在 DNS 或中间代理,而不是目标服务器慢。

热门AI工具

更多
Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

相关专题

更多
curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

3423

2023.06.14

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

755

2023.10.30

scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

909

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2520

2023.10.25

SSL检测工具介绍
SSL检测工具介绍

SSL检测工具有SSL Labs、SSL Check、SSL Server Test、SSLMate、SSL/TLS Analyzer等。详细介绍:1、SSL Labs是一个由Qualys提供的在线SSL检测工具,可以评估服务器证书的部署情况、加密套件、协议支持等方面的安全性,它提供了一个详细的报告,包括证书的颁发者、有效期、安全性配置等;2、SSL Check等等。

710

2023.10.20

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

20

2026.09.30

LLVM RISC-V参数配置教程
LLVM RISC-V参数配置教程

本专题介绍LLVM对RISC-V基础ISA和扩展的支持方式,涵盖RV32、RV64、标准扩展、实验性扩展、厂商扩展、-menable-experimental-extensions和版本差异。

0

2026.09.30

LLVM IR中间表示入门指南
LLVM IR中间表示入门指南

本专题整理LLVM IR的核心概念,包括中间表示作用、模块结构、函数、基本块、SSA形式、类型系统和常见语法,帮助新手理解LLVM编译流程中的关键层。

0

2026.09.30

PDF转图片方法
PDF转图片方法

需要把 PDF 页面用于上传、预览、分享或图片归档时,PDF 转图片方法专题整理 JPG/PNG 格式选择、逐页导出、清晰度设置、批量下载和结果检查等流程,帮助用户稳定完成 PDF 图片化处理。

20

2026.09.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
墨刀帮助中心
墨刀帮助中心

共0课时 | 0人学习

MyEclipse学习中心
MyEclipse学习中心

共0课时 | 0人学习

Apache Subversion 官方手册
Apache Subversion 官方手册

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn