我的编程空间,编程开发者的网络收藏夹
学习永远不晚

PHP获取重定向URL的方法是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

PHP获取重定向URL的方法是什么

本篇内容介绍了“PHP获取重定向URL的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

PHP获取重定向URL的方法:1、使用get_headers函数来获取,语法“get_headers($url, 1)”;2、使用fsockopen()函数来获取;3、利用curl_init()、curl_setopt()等函数来获取。

PHP获取重定向URL的方法是什么

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

1、使用get_headers函数
php自带的get_headers函数可以获取服务器响应一个HTTP请求所发送的所有标头,我们可以尝试用该函数实现。

function get_redirect_url($url){   $header = get_headers($url, 1);   if (strpos($header[0], ’301′) !== false || strpos($header[0], ’302′) !== false) {     if(is_array($header['Location'])) {       return $header['Location'][count($header['Location'])-1];     }else{       return $header['Location'];        }   }else {     return $url;   } }

2、使用fsockopen()内置函数

function get_redirect_url($url){   $redirect_url = false;   $url_parts = @parse_url($url);   if (!$url_parts) return false;   if (!isset($url_parts['host'])) return false;   if (!isset($url_parts['path'])) $url_parts['path'] = ‘/’;   $sock = fsockopen($url_parts['host'], (isset($url_parts['port']) ?   (int)$url_parts['port'] : 80), $errno, $errstr, 30);   if (!$sock) return false;  $request = “HEAD ” . $url_parts['path'] . (isset($url_parts['query']) ? ‘?’.$url_parts['query'] : ”) . ” HTTP/1.1\r\n”;   $request .= ‘Host: ‘ . $url_parts['host'] . “\r\n”;   $request .= “Connection: Close\r\n\r\n”;   fwrite($sock, $request);   $response = ”;   while(!feof($sock)) $response .= fread($sock, 8192);   fclose($sock);  if (preg_match(‘/^Location: (.+?)$/m’, $response, $matches)){     return trim($matches[1]);   } else {    return false;  }}

3、使用cURL函数

function get_redirect_url($url, $referer=”, $timeout = 10) {   $redirect_url = false;   $ch = curl_init();   curl_setopt($ch, CURLOPT_URL, $url);   curl_setopt($ch, CURLOPT_HEADER, TRUE);   curl_setopt($ch, CURLOPT_NOBODY, TRUE);//不返回请求体内容   curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);//允许请求的链接跳转   curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);   curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);   curl_setopt($ch, CURLOPT_HTTPHEADER, array(      ‘Accept: */*’,      ‘User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)’,      ‘Connection: Keep-Alive’));   if ($referer) {     curl_setopt($ch, CURLOPT_REFERER, $referer);//设置referer   }   $content = curl_exec($ch);   if(!curl_errno($ch)) {     $redirect_url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);//获取最终请求的url地址   }   return $redirect_url;}

“PHP获取重定向URL的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

PHP获取重定向URL的方法是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

PHP获取重定向URL的方法是什么

本篇内容介绍了“PHP获取重定向URL的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!PHP获取重定向URL的方法:1、使用get
2023-06-21

PHP获取重定向URL的几种方法是什么

PHP获取重定向URL的方法:1、使用get_headers函数来获取,语法“get_headers($url, 1)”;2、使用fsockopen()函数来获取;3、利用curl_init()、curl_setopt()等函数来获取。
2018-05-27

PHP获取重定向URL的几种方法是什么

获取重定向URL的PHP方法:get_headers()获取响应头中的重定向URL。stream_context_create()和file_get_contents()创建流上下文并设置重定向选项。curl函数利用CURLOPT_FOLLOWLOCATION选项启用重定向。HTTP响应代码(如301、302)表示重定向,可检查响应头中的Location头获取重定向URL。
PHP获取重定向URL的几种方法是什么
2024-04-25

VBS中怎么获取重定向的URL

今天就跟大家聊聊有关VBS中怎么获取重定向的URL,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。访问了一下他所谓的aaa.com,发现是HTTP 302重定向HTTP/1.1 302
2023-06-08

虚拟主机重定向url的方法是什么

虚拟主机重定向URL的方法有多种,以下是常用的几种方法:1. 使用.htaccess文件:可以在虚拟主机的根目录下创建一个名为.htaccess的文件,并在其中使用RewriteRule指令进行URL重定向。例如,将所有访问www.exam
2023-09-05

php获取url扩展名的几种方法是什么

获取方法:1、用“substr(strrchr($url,"."),1)”语句;2、用“substr($url,strrpos($url,'.')+1)”语句;3、用“pathinfo($url,PATHINFO_EXTENSION)”。
2014-10-06

php怎么判断url是否重定向

在PHP中,可以使用`curl`扩展库来判断URL是否重定向。下面是一个简单的示例:```phpfunction isRedirected($url) {$ch = curl_init($url);curl_setopt($ch, CURL
2023-08-19

Express URL跳转(重定向)的实现方法

Express是一个基于Node.js实现的Web框架,其响应HTTP请求的response对象中有两个用于URL跳转方法res.location()和res.redirect(),使用它们可以实现URL的301或302重定向。 res.l
2022-06-04

tomcat域名重定向的方法是什么

要在Tomcat中实现域名重定向,可以通过以下步骤进行操作:打开Tomcat的配置文件server.xml,一般位于Tomcat的conf目录下。在server.xml中找到对应的标签,可以根据需要在标签中添加如下配置:
tomcat域名重定向的方法是什么
2024-04-09

python重定向输出的方法是什么

在Python中,可以使用重定向符号 ">" 将输出重定向到文件或其他输出流。具体来说,可以通过以下两种方法重定向Python的输出:1. 使用 ">" 符号将输出重定向到文件中。例如,下面的代码将输出重定向到名为 "output.txt"
2023-05-13

linux输出重定向的方法是什么

Linux中的输出重定向有以下几种方式:1. 使用符号">"将命令的标准输出重定向到文件中,如果文件不存在则创建文件,如果文件已存在则覆盖文件内容。例如:```command > file```2. 使用符号">>"将命令的标准输出追加到文
2023-08-19

vps网站重定向的方法是什么

VPS网站重定向的方法有以下几种:1. 使用.htaccess文件:在VPS的网站根目录中创建一个名为".htaccess"的文件,并在其中配置重定向规则。例如,可以使用以下代码将所有请求重定向到另一个网站:```Redirect 301
2023-08-20

nginx重定向负载的方法是什么

Nginx可以通过使用proxy_pass指令来实现重定向负载的方法。该指令将客户端的请求转发给后端的多个服务器,可以根据一定的负载均衡算法来分配请求,实现负载均衡的效果。具体的配置方法如下:在Nginx的配置文件中,使用upstream指
2023-10-26

php重定向的概念是什么

这篇文章主要介绍“php重定向的概念是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php重定向的概念是什么”文章能帮助大家解决问题。在php中,重定向是指通过各种方法将网络请求重新定个方向,转
2023-06-29

php中实现重定向有什么方法

php中实现重定向的方法:1、使用“header('location:跳转地址');”语句;2、使用“echo '<meta http-equiv="refresh" content="跳转秒数;url=跳转地址">';”语句。
2017-09-09

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录