返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP获取重定向URL的方法是什么
  • 574
分享到

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

2023-06-21 23:06:43 574人浏览 薄情痞子
摘要

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

本篇内容介绍了“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的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: PHP获取重定向URL的方法是什么

本文链接: https://lsjlt.com/news/301402.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • PHP获取重定向URL的方法是什么
    本篇内容介绍了“PHP获取重定向URL的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!PHP获取重定向URL的方法:1、使用get...
    99+
    2023-06-21
  • PHP获取重定向URL的几种方法是什么
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑1、使用get_headers函数php自带的get_headers函数可以获取服务器响应一个HTTP请求所发送的所有标头,我们可以尝试用该函数实现。function ...
    99+
    2018-05-27
    PHP 获取重定向URL
  • VBS中怎么获取重定向的URL
    今天就跟大家聊聊有关VBS中怎么获取重定向的URL,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。访问了一下他所谓的aaa.com,发现是HTTP 302重定向HTTP/1.1 302...
    99+
    2023-06-08
  • python 重定向获取真实url
    楼主在做公司项目的时候遇到url重定向的问题,因此上网简单查找,作出如下结果 由于使用的是语言是python所以以下是python的简单解决方案 http_headers = { 'Accept': '*/*','Connecti...
    99+
    2023-01-31
    重定向 真实 python
  • python3中requests库重定向获取URL
    前言: 有时候 我们抓取一些页面,发现一些url 有重定向, 返回 301 ,或者302 这种情况。 那么我们如何获取真实的URL呢? 或者跳转后的URL呢? 这里我使用 reque...
    99+
    2024-04-02
  • 虚拟主机重定向url的方法是什么
    虚拟主机重定向URL的方法有多种,以下是常用的几种方法:1. 使用.htaccess文件:可以在虚拟主机的根目录下创建一个名为.ht...
    99+
    2023-09-05
    虚拟主机
  • Python爬虫后如何获取重定向url
    小编给大家分享一下Python爬虫后如何获取重定向url,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!python的数据类型有哪些python的数据类型:1. 数...
    99+
    2023-06-14
  • php域名重定向是什么?PHP重定向的几种方法总结
    PHP域名重定向是一种重要的网络技术,它是将用户访问的不同域名重定向到同一个主域名下的方法。域名重定向可以解决网站SEO优化、品牌宣传以及用户访问等问题,也可以防止恶意域名被滥用的问题。在本文中,我们将介绍PHP域名重定向的具体方法和原理。...
    99+
    2023-05-14
    重定向 php
  • php获取url扩展名的几种方法是什么
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php获取url扩展名的方法方法1:<php $url="http://localhost/user/order.php"; function...
    99+
    2014-10-06
    php url 扩展名
  • php怎么判断url是否重定向
    在PHP中,可以使用`curl`扩展库来判断URL是否重定向。下面是一个简单的示例:```phpfunction isRedirec...
    99+
    2023-08-19
    php
  • Express URL跳转(重定向)的实现方法
    Express是一个基于Node.js实现的Web框架,其响应HTTP请求的response对象中有两个用于URL跳转方法res.location()和res.redirect(),使用它们可以实现URL的...
    99+
    2022-06-04
    跳转 重定向 方法
  • python重定向输出的方法是什么
    在Python中,可以使用重定向符号 ">" 将输出重定向到文件或其他输出流。具体来说,可以通过以下两种方...
    99+
    2023-05-13
    python重定向 python
  • linux输出重定向的方法是什么
    Linux中的输出重定向有以下几种方式:1. 使用符号">"将命令的标准输出重定向到文件中,如果文件不存在...
    99+
    2023-08-19
    linux
  • vps网站重定向的方法是什么
    VPS网站重定向的方法有以下几种:1. 使用.htaccess文件:在VPS的网站根目录中创建一个名为".htaccess"的文件,...
    99+
    2023-08-20
    vps
  • nginx重定向负载的方法是什么
    Nginx可以通过使用proxy_pass指令来实现重定向负载的方法。该指令将客户端的请求转发给后端的多个服务器,可以根据一定的负载...
    99+
    2023-10-26
    nginx
  • tomcat域名重定向的方法是什么
    要在Tomcat中实现域名重定向,可以通过以下步骤进行操作: 打开Tomcat的配置文件server.xml,一般位于Tomca...
    99+
    2024-04-09
    tomcat
  • php重定向的概念是什么
    这篇文章主要介绍“php重定向的概念是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php重定向的概念是什么”文章能帮助大家解决问题。在php中,重定向是指通过各种方法将网络请求重新定个方向,转...
    99+
    2023-06-29
  • SpringMVC中重定向model值的获取方式
    目录SpringMVC重定向model值的获取1、步骤一:在控制器中编写2、编写对应跳转3、测试:在浏览器访问自己项目下的对应控制器4、然后浏览器跳转SpringMVC中model的...
    99+
    2024-04-02
  • php重定向是什么意思
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php重定向重定向(Redirect)就是通过各种方法将各种网络请求重新定个方向转到其它位置。分为内部和外部,区别是外部重定向时,浏览器地址栏中的URL会发生变化。页面...
    99+
    2016-03-26
    php 重定向
  • php中实现重定向有什么方法
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑什么是重定向?重定向(Redirect)就是通过各种方法将各种网络请求重新定个方向转到其它位置(如:网页重定向、域名的重定向、路由选择的变化也是对数据报文经由路径的一种...
    99+
    2017-09-09
    php 重定向
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作