使用Nginx做转发和匹配替换
Nginx是一个强大的服务器软件,由于处理数据内容处于第七层协议应用层的原因,所以获取的数据也比较完整;
Nginx做转发:
这个很简单,vi nginx.conf(编辑nginx配置文件)
添加location /public/sexy.jpg{//这个是你域名访问的图片
proxy_pass http://www.tmp.jpg;#这个是你要替换的图片路径(加上http头)
}
保存退出,重启nginx 就可以看到原本项目 http://xxx/public/sexy.jpg变成了http://www.tmp.jpg这个图片,虽然在页面上看道德还是sexy.jpg;
nginx反向代理很牛逼吧,还有个更牛逼的就是sub filter这个nginx插件
将插件存放到tmp目录下面
cd /tmp
git clone git://github.com/yaoweibin/ngx_http_substitutions_filter_module.git
【PS:如果nginx安装过的,那么需要先找到编译目录(就是你安装nginx的安装包目录)】
cd /xxx/nginx-1.11.0(安装包目录)
./configure --prefix=/xxxx/nginx(nginx项目) --add-module=/tmp/ngx_http_substitutions_filter_module #追加sub_filter插件
make
然后就会在nginx-11.0(安装包目录)/objs/nginx 更新nginx启动文件
cp 复制nginx-11.0(安装包目录)/objs/nginx /xxxx/nginx(nginx项目)/sbin/nginx 替换掉就行了
vi /xxxx/nginx(nginx项目)/conf/nginx.conf 编辑配置nginx
ps:我在网上看很多都是在 location /{}里面添加的,不过我试过都不行,只能在location外面 server里面配置才有效果

location里面没效果,location外面 server里面才有效;
subs_filter 需要替换的文本 结果的文本;//中间采用空格 隔开就行了
如果遇到 <a href=""> haha </a>有空格的文本,则用引用括起来
eg: '<a href=""> haha </a>' '<a href=""> xxiixixix </a>' //这样就行了
使用Nginx做转发和匹配替换的更多相关文章
- (转)nginx做转发时,带'_'的header内容丢失
原本在测试环境测试通过的APP,今天准备切到线上环境做最后测试,结果发现了错误.查看日志发现是APP端发送的http请求中的header内容丢失了.那么代码没有改动,怎么平白无故会丢失头信息? 于是想 ...
- Nginx做转发
二台服务器,服务器A做域名转外,所有外网的域名都到这台服务器A的80端口上,服务器B内网地址192.168.1.227, 上面IIS搭建了N多网站,以端口来区分,用以前的方式 配置转发 结果发现首页能 ...
- Nginx应用-Location路由反向代理及重写策略 请求转发-URL匹配规则 NGINX Reverse Proxy
NGINX Docs | NGINX Reverse Proxy https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/ ...
- 把www.domain.com均衡到本机不同的端口 反向代理 隐藏端口 Nginx做非80端口转发 搭建nginx反向代理用做内网域名转发 location 规则
负载均衡-Nginx中文文档 http://www.nginx.cn/doc/example/loadbanlance.html 负载均衡 一个简单的负载均衡的示例,把www.domain.com均衡 ...
- 端口被占用通过域名的处理 把www.domain.com均衡到本机不同的端口 反向代理 隐藏端口 Nginx做非80端口转发 搭建nginx反向代理用做内网域名转发 location 规则
负载均衡-Nginx中文文档 http://www.nginx.cn/doc/example/loadbanlance.html 负载均衡 一个简单的负载均衡的示例,把www.domain.com均衡 ...
- 【nginx配置】nginx做非80端口转发
一个场景 最近在使用PHP重写一个使用JAVA写的项目,因为需要查看之前的项目,所以要在本地搭建一个Tomcat来跑JAVA的项目.搭建成功后,因为Tomcat监听的端口是8080,因此,访问的URL ...
- nginx做反向代理负载均衡 Java怎么获取后端服务器获取用户IP
nginx做反向负载均衡,后端服务器获取真实客户端ip 首先,在前端nginx上需要做如下配置: location / proxy_set_hearder host ...
- 死磕nginx系列--使用nginx做负载均衡
使用nginx做负载均衡的两大模块: upstream 定义负载节点池. location 模块 进行URL匹配. proxy模块 发送请求给upstream定义的节点池. upstream模块解读 ...
- Nginx 关于 location 的匹配规则详解
有些童鞋的误区 1. location 的匹配顺序是“先匹配正则,再匹配普通”. 矫正: location 的匹配顺序其实是“先匹配普通,再匹配正则”.我这么说,大家一定会反驳我,因为按“先匹配普通, ...
随机推荐
- greenlet
在任何时刻,只有一个greenlet在运行,合理安排的串行. http://www.cnblogs.com/xybaby/p/6337944.html
- Spark 调优(转)
Spark 调优 返回原文英文原文:Tuning Spark Because of the in-memory nature of most Spark computations, Spark pro ...
- Graylog日志管理系统---搜索查询方法使用简介
Elasticsearch 是一个基于 Lucene 构建的开源.分布式.提供 RESTful 接口的全文搜索引擎 一.Search页面的各位置功能介绍: 1.日志搜索的时间范围 为了使用方便,预设有 ...
- 新版openvpn for pc使用旧证书问题的处理
在client.ovpn中增加一句: tls-cipher "DEFAULT:@SECLEVEL=0"
- 【转】ubuntu 打开命令行窗口的方法
1. CTRL+ALT+T 2. ALT+F2调出Run a Command,输入gnome-terminal 3. 单击dash home这个按钮,输入te,就可以看到Terminal终端的选项了
- 在使用 #import <objc/message.h>时 xcode 报 :Too many arguments to function call, expected 0 , have * 解决方法
选中项目 - Project - Build Settings -
- C#中属性和字段的区别
属性和字段的区别 在C#中,我们可以非常自由的.毫无限制的访问公有字段,但在一些场合中,我们可能希望限制只能给字段赋于某个范围的值.或是要求字段只能读或只能写,或是在改变字段时能改变对象的其他一些状态 ...
- 吴裕雄 python深度学习与实践(2)
#coding = utf8 import threading,time,random count = 0 class MyThread (threading.Thread): def __init_ ...
- win10虚拟桌面;一不小心按错了突然只剩下桌面,启动的程序都没了
先说如何关闭虚拟桌面:ctrl+win+F4(万一你还没看到怎么关闭虚拟桌面,就创建并调整到虚拟桌面,会很懵的,因为你启动的所有程序全部都突然消失了,只剩下开机的桌面了): win10有个功能,虚拟桌 ...
- yii2-ueditor
扩展下载(yii2.0-ueditor) 框架下载(Yii 2.0.6 高级版) 描述: 最佳适用于yii2.0 高级版(advanced)应用框架,对于基础板(basic)及其他框架要修改对应的命名 ...