搜索
首页后端开发php教程php的http协议视频资源的推荐
php的http协议视频资源的推荐Aug 30, 2017 pm 02:00 PM
httpphp推荐

《PHP的HTTP协议视频教程》将带领大家学习PHP中的HTTP协议,掌握http交互请求,例如post、和get请求,并用代码方式实现常见的post、get请求,以及防盗链、反向Ajax等高级应用。

php的http协议视频资源的推荐

课程播放地址:http://www.php.cn/course/411.html

该老师讲课风格:

教师讲课生动形象,机智诙谐,妙语连珠,动人心弦。一个生动形象的比喻,犹如画龙点睛,给学生开启智慧之门;一种恰如其分的幽默,引来学生会心的微笑,如饮一杯甘醇的美酒,给人以回味和留恋;哲人的警句、文化的箴言不时穿插于讲述中间,给人以思考和警醒。

本视频中较为难点是http防盗链了:

使用HTTP协议。利用referer做防盗链(不需要用PHP编写,而是在服务器层面控制就OK了)
我们在网页里访问站外的图片的时候,在图片本站是可以看得,在外头就不能看了
因为header信息中的referer元素。
还有是做统计的时候,
我们能够统计出来用户是从哪个地方,什么时间访问网站的。比如腾讯分析网站
统计的时候是靠什么知道用户从什么地方去的网站


在HTTP协议中  头信息中有一个很重要的选项 referer
referer 表示的是网页的来源以及上一页的地址
如果直接在浏览器输入地址,进入网站,则没有referer头信息


所以,服务器可根据referer来知道用户从哪个网站进来的和图片是从哪个网站进来的

利用referer头信息来设置防盗链的具体操作步骤如下:

/** 
如何配置apache服务器。用于图片防盗链(使用url重写) 
     
    在web服务器层面,我们可以在http协议的referer头信息来判断, 
                        如果来自站外,则统一重写到一个很小的防盗链提醒图片上去 
步骤: 
    1.打开 apache 重写模块 mod_rewrite     
        (D:\wamp\bin\apache\apache2.4.9\conf)    
        #LoadModule rewrite_module modules/mod_rewrite.so                
            把#去掉,重启apache 
    2.在需要防盗的网站或者目录下,写 .htaccess 文件(windows下不能直接创建,可以另存) 
            并指定防盗链规则 
                分析referer信息,如果不是来自本站,则重写 
**/  
重写规则 .htaccess 文件  
 1.哪种情况重写规则  
    是jpeg/gif/png图片的时候  
    是referer头与localhost不匹配的时候  
  
 2.怎么重写  
    统一 rewrite 到某个防盗链图片上  
    RewriteEngine On  
      
    //只是在改页面下生效  
    Rewrite Base /HTTPxieyi/day1  
    //会对以下格式的文件进行重写规则  
    RewriteCond %{REQUEST_FILENAME} .*\.(jpg|jpeg|gif|png) [NC]  
      
    //如果不是来自localhost的用户,会重写  
    RewriteCond %{HTTP_REFERER} !localhost [NC]  
      
    //会重写到自学it网的logo上     
    RewriteRule .* http://www.zixue.it/static/image/common/zixuelogo.png

html的具体代码如下

<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>图片的防盗链</title>  
</head>  
<body>  
    <p>  
        <img src="/static/imghwm/default1.png"  data-src="http://imgsrc.baidu.com/forum/w%3D580%3B/sign=5547962a02d162d985ee621421e4a8ec/0d338744ebf81a4c06403427df2a6059242da6ea.jpg"  class="lazy"   alt="">  
        <img src="/static/imghwm/default1.png"  data-src="./bb.jpg"  class="lazy"   alt="">  
        <img src="/static/imghwm/default1.png"  data-src="./aa.jpg"  class="lazy"   alt="">  
    </p>  
      
</body>  
</html>

反防盗链的具体代码如下:

<?php   
/** 
反防盗链 
****/  
  
  
require(&#39;./07.class.php&#39;);  
  
$http = new Http(&#39;http://localhost/HTTPxieyi/day1/bb.jpg&#39;);  
  
//如果没有加以下这句话,就会显示盗链  
//加上referer就会告诉浏览器,我是来自localhost的,不是来自其他网站的,你不用防我  
$http->setHeader(&#39;Referer: http://localhost&#39;);  
$res = $http->get();  
      
    //aaa.显示的倒链  
//file_put_contents(&#39;./aaa.jpg&#39;,substr(strstr($res,"\r\n\r\n"),4));  
file_put_contents(&#39;./bbb.jpg&#39;,substr(strstr($res,"\r\n\r\n"),4));  
  
//应该在判断路径或者response的mime头信息,确定图片的类型

以上是php的http协议视频资源的推荐的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Springboot怎么使用内置tomcat禁止不安全HTTPSpringboot怎么使用内置tomcat禁止不安全HTTPMay 12, 2023 am 11:49 AM

Springboot内置tomcat禁止不安全HTTP方法1、在tomcat的web.xml中可以配置如下内容让tomcat禁止不安全的HTTP方法/*PUTDELETEHEADOPTIONSTRACEBASIC2、Springboot使用内置tomcat没有web.xml配置文件,可以通过以下配置进行,简单来说就是要注入到Spring容器中@ConfigurationpublicclassTomcatConfig{@BeanpublicEmbeddedServletContainerFacto

JAVA发送HTTP请求的方式有哪些JAVA发送HTTP请求的方式有哪些Apr 15, 2023 am 09:04 AM

1.HttpURLConnection使用JDK原生提供的net,无需其他jar包,代码如下:importcom.alibaba.fastjson.JSON;importjava.io.BufferedReader;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.io.OutputStream;importjava.net.HttpURLConnection;

nginx中如何升级到支持HTTP2.0nginx中如何升级到支持HTTP2.0May 24, 2023 pm 10:58 PM

一、前言#ssl写在443端口后面。这样http和https的链接都可以用listen443sslhttp2default_server;server_namechat.chengxinsong.cn;#hsts的合理使用,max-age表明hsts在浏览器中的缓存时间,includesubdomainscam参数指定应该在所有子域上启用hsts,preload参数表示预加载,通过strict-transport-security:max-age=0将缓存设置为0可以撤销hstsadd_head

Nginx的HTTP2协议优化与安全设置Nginx的HTTP2协议优化与安全设置Jun 10, 2023 am 10:24 AM

随着互联网的不断发展和改善,Web服务器在速度和性能上的需求也越来越高。为了满足这样的需求,Nginx已经成功地掌握了HTTP2协议并将其融入其服务器的性能中。HTTP2协议要比早期的HTTP协议更加高效,但同时也存在着特定的安全问题。本文将为您详细介绍如何进行Nginx的HTTP2协议优化和安全设置。一、Nginx的HTTP2协议优化1.启用HTTP2在N

Python的HTTP客户端模块urllib与urllib3怎么使用Python的HTTP客户端模块urllib与urllib3怎么使用May 20, 2023 pm 07:58 PM

一、urllib概述:urllib是Python中请求url连接的官方标准库,就是你安装了python,这个库就已经可以直接使用了,基本上涵盖了基础的网络请求功能。在Python2中主要为urllib和urllib2,在Python3中整合成了urllib。Python3.x中将urllib2合并到了urllib,之后此包分成了以下四个模块:urllib.request:它是最基本的http请求模块,用来模拟发送请求urllib.error:异常处理模块,如果出现错误可以捕获这些异常urllib

Nginx中HTTP的keepalive怎么配置Nginx中HTTP的keepalive怎么配置May 12, 2023 am 11:28 AM

httpkeepalive在http早期,每个http请求都要求打开一个tpcsocket连接,并且使用一次之后就断开这个tcp连接。使用keep-alive可以改善这种状态,即在一次tcp连接中可以持续发送多份数据而不会断开连接。通过使用keep-alive机制,可以减少tcp连接建立次数,也意味着可以减少time_wait状态连接,以此提高性能和提高httpd服务器的吞吐率(更少的tcp连接意味着更少的系统内核调用,socket的accept()和close()调用)。但是,keep-ali

Nginx http运行状况健康检查如何配置Nginx http运行状况健康检查如何配置May 14, 2023 pm 06:10 PM

被动检查对于被动健康检查,nginx和nginxplus会在事件发生时对其进行监控,并尝试恢复失败的连接。如果仍然无法恢复正常,nginx开源版和nginxplus会将服务器标记为不可用,并暂时停止向其发送请求,直到它再次标记为活动状态。上游服务器标记为不可用的条件是为每个上游服务器定义的,其中包含块中server指令的参数upstream:fail_timeout-设置服务器标记为不可用时必须进行多次失败尝试的时间,以及服务器标记为不可用的时间(默认为10秒)。max_fails-设置在fai

怎么利用Java实现调用http请求怎么利用Java实现调用http请求Jun 02, 2023 pm 04:57 PM

一、概述在实际开发过程中,我们经常需要调用对方提供的接口或测试自己写的接口是否合适。很多项目都会封装规定好本身项目的接口规范,所以大多数需要去调用对方提供的接口或第三方接口(短信、天气等)。在Java项目中调用第三方接口的方式有:1、通过JDK网络类Java.net.HttpURLConnection;2、通过common封装好的HttpClient;3、通过Apache封装好的CloseableHttpClient;4、通过SpringBoot-RestTemplate;二、Java调用第三方

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器