直接打开文章链接和跳转文章链接的Http头是不一样的,Referer 字段来判断是否是直接访问图片。
1)创建.htaccess文件
2)防盗链规则
### 直接打开图片链接http头信息:
~~~
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cache-Control: max-age=0
Connection: keep-alive
Host: www.site.com
If-Modified-Since: Tue, 22 May 2018 10:53:43 GMT
If-None-Match: "19c28-56cc93b51dbc0"
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36
~~~
### 跳转打开图片链接信息:
~~~
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cache-Control: max-age=0
Connection: keep-alive
Host: www.site.com
If-Modified-Since: Tue, 22 May 2018 10:53:43 GMT
If-None-Match: "19c28-56cc93b51dbc0"
**区别地方->Referer: http://www.site.com/**
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36
~~~
### .htaccess规则配置(亲测可用)
~~~
<VirtualHost *:80>
ServerAdmin chenruiqiang@yd-x.com
DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs"
ServerName www.site.com
ServerAlias www.site.com
ErrorLog "logs/www.site.com-error_log"
CustomLog "logs/www.site.com-access_log" common
<Directory /Applications/XAMPP/xamppfiles/htdocs>
AllowOverride All
Options All
</Directory>
<IfModule rewrite_module>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} \.(gif|jpeg|png|jpg)$ [NC]
RewriteCond %{HTTP_REFERER} !^http://localhost/.*& [NC]
RewriteRule .* /2.jpeg
</IfModule>
</VirtualHost>
~~~
- 简介
- Cookie
- HTML5 LocalStorage
- session
- 当浏览器关闭后,Session就销毁了吗?
- mysql数据库保存session
- HTTP协议的由来
- fsockopen异步请求
- http防盗链
- Apache伪静态知识补充
- 大并发量解决方案
- 大型网站是怎样解决多用户高并发访问
- 网站高并发 大流量访问的处理及解决方法
- 并发数与在线客户数 注册用户数的关系
- 即时聊天程序
- 反向Ajax实现
- ob缓存作用
- 浅聊并发之战
- php扩展安装
- php安装redis扩展
- SQLMap自动化实施SQL注入共计
- 命名空间namespace
- 集群和分布式之【session共享】
- php Redis存储Session 【1】
- php Redis存储Session 【2】
- php mysql存储session【1】
- php缓存
- 文件缓存
- memcache和redis的比较
- 原生session与session in redis对比
- XSS攻击【1】
- XSS攻击【2】
- PHP消息队列
- php+mysql 模拟发送邮件队列
- php+mysql 模拟订单处理队列
- php+redis 模拟秒杀队列
- RabbitMQ 消息队列系统
- beanstalkd
- PHP构建即时通讯
- WebSocket协议
- workerman
- PHP变量的作用域
- PHP传值和传引用的区别
- PHP匿名函数
- PHP递归函数&应用
- PHP单例模式
- PHP性能优化
- RESTful
- 集群
- 增加pgsql扩展
- php.ini路径查找
- Swoole Compiler
- mysql 主从
- 主从
- mysql-proxy
- window docker环境