http的全称:超文本传输协议
http协议分类
http1.1长连接
图床
http请求解读
get 发送请求方式
accept 表示客户端可接受任何数据
referer 表示我从哪里来
Accept -L anguage 页面语言
预定义全局变量
$_SERVER
是什么?
Apache该模块将http协议二次封装至$_SERVER
path路径是服务器路经
$_SERVER数组常用的
HTTP _HOST
R E M O T E _A D D R
含义:访问该页面的iP
例:192.168.1.100
$_SERVER[ R E M O T E _A D D R ];
DO C U M E N T _R O O T
含义:获取apche的主目录
例:WWW的路径
REQUEST_URI
含义:获取请求资源名
例:http /http.php
请求方式
get和post 的区别有哪些?
1.安全性
get请求的数据会显示在地址栏上
post 请求数据会放在httP协议消息体里
2从可以提交数据的大小看
httP协议没有限制大小,浏览器对get请求和
post 请求做显示
get请求数据:2K+35
post:无限制
3.get请求可以更好的添加到收藏夹
防盗链技术
如图所示:

a.html代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<a href="http://localhost:8989/php/http/import.php">防盗链</a>
</body>
</html>
然后再看下图:

代码如下:
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<a href="http://localhost:8989/php/http/import.php">防盗链</a>
</body>
</html>
现在打开各自网页,如图所示都可以访问到/import.php


结果如下:

如何防止外部文件访问服务器中import.php?
<?php
header("Content-Type: text/html; charset=utf-8");
//第一步 判断 获取数据是从哪里来判断
if(isset($_SERVER['HTTP_REFERER'])){
//没有防止
//判断它是否符合路径的标准,不符合就让它跳转至其他页面
if(strpos($_SERVER['HTTP_REFERER'],'http://localhost:8989/php/http/import.php')==0){
echo "周苍是一个大帅哥";
}else{
header("location:waring.php");
}
}else{
header("location:waring.php");
}
?>