Nginx服务的地址重写
调整Nginx服务器配置,实现:
1.所有访问a.html的请求,重定向到b.html;
2.所有访问Nginx服务器(192.168.4.1)的请求重定向至www.baidu.com;
3.所有访问Nginx服务器(192.168.4.1)/下面子页面,重定向至www.baidu.com/下相同的页面.
4.实现firefox与curl访问相同页面文件,返回不同的内容
总结地址重写的格式有:
rewrite 旧地址 新地址 [选项];
last 不再读其他rewrite
break 不再读其他语句,结束请求
redirect 临时重定向
permament 永久重定向
1. 所有访问a.html的请求,重定向到b.html
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
......
server {
listen 80;
server_name localhost;
rewrite /a.html /b.html redirect; //地址跳转到b.html
location / {
root html;
index index.html index.htm;
}
}
# echo "test page" > /usr/local/nginx/html/b.html //在网页文件里写入数据,用于测试
# /usr/local/nginx/sbin/nginx -s reload //重启,加载配置
[root@client ~]# firefox http://192.168.4.5/a.html //客户端测试,访问a.html,但浏览器地址栏会自动跳转到b.html的页面
2.所有访问Nginx服务器(192.168.4.1)的请求重定向至www.baidu.com
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
......
server {
listen 80;
server_name localhost;
rewrite ^/ http://baidu.com/ ; //地址跳转到百度
location / {
root html;
index index.html index.htm;
}
}
# /usr/local/nginx/sbin/nginx -s reload //重启,加载配置
[root@room9pc01 ~]# firefox http://192.168.4.1 //真机上访问Nginx服务器,浏览器地址栏自动跳转至www.baidu.com
3.所有访问Nginx服务器(192.168.4.1)/下面子页面,重定向至www.baidu.com/下相同的页面
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
......
server {
listen 80;
server_name localhost;
rewrite ^/(.*)$ http://baidu.com/ $1; //地址跳转到百度下的子页面,这里用到了正则,即以/开头,以任意内容结尾(.*)$
location / {
root html;
index index.html index.htm;
}
}
# /usr/local/nginx/sbin/nginx -s reload //重启,加载配置
[root@room9pc01 ~]# firefox http://192.168.4.1/test //真机上访问Nginx服务器下的子页面,浏览器地址栏自动跳转至www.baidu.com/子页面
4.实现firefox与curl访问相同页面文件,返回不同的内容
4.1创建网页目录以及对应的页面文件,用于测试:
# echo "I am normal page" > /usr/local/nginx/html/test.html
# mkdir -p /usr/local/nginx/html/firefox/
# echo "wo shi firefox page" > /usr/local/nginx/html/firefox/test.html
4.2修改Nginx服务配置
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
......
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
if ($http_user_agent ~* firefox) { //变量$http_user_agent能识别客户端的firefox浏览器,这里的符号~示意正则匹配,符号*示意不区分大小写
rewrite ^/(.*)$ /firefox/$1;
}
}
# /usr/local/nginx/sbin/nginx -s reload //重启,加载配置
# firefox http://192.168.4.1/test.html //使用火狐浏览器访问Nginx服务器
# curl http://192.168.4.1/test.html //本地curl访问Nginx服务器
结束.
Nginx服务的地址重写的更多相关文章
- nginx篇最初级用法之地址重写
nginx服务器的地址重写,主要用到的配置参数是rewrite rewrite regex replacement flag rewrite 旧地址 新地址 [选项] 支持的选项有: last 不再读 ...
- 高级运维(三):部署Lnmp环境、构建Lnmp平台、地址重写
一.部署LNMP环境 目标: 安装部署Nginx.MariaDB.PHP环境 1> 安装部署Nginx.MariaDB.PHP.PHP-FPM: 2> 启动Nginx.MariaDB.FP ...
- Linux服务之nginx服务篇五(静态/动态文件缓存)
一.nginx实现静态文件缓存实战 1.nginx静态文件缓存 如果要熟练使用nginx来实现文件的缓存,那下面的几个指令你必须要牢记于心 (1)指令1:proxy_cache_path 作用:设置缓 ...
- nginx反向代理,负载均衡,动静分离,rewrite地址重写介绍
一.rewrite地址重写 地址转发后客户端浏览器地址栏中的地址显示是不变的,而地址重写后地址栏中的地址会变成正确的地址. 在一次地址转发过程中只会产生一次网络请求,而一次地址重写产生两次请求. 地址 ...
- Apache Nginx URL 地址 重写
URL重写这东西在工作中用了很多次了,但每次都忘记了要记得把知道的积累下来. 哎,要么认为没必要,要么就是没时间?! 一.Apache 篇 官方地址:http://man.chinaunix.net/ ...
- 9. nginx服务实验笔记
LNMP安装与配置 Nginx与apache.lighttp性能综合对比,如下图: 一.系统需求: CentOS/RHEL/Fedora/Debian/Ubuntu系统 需要3GB以上硬盘 ...
- Nginx_地址重写(rewrite)_日志管理(log_format)_压缩输出_Nginx设定限速_Nginx设置反向代理及反向代理缓存
Nginx地址重写 Nginx rewrite rewrite语法规则1).变量名可以使用 "=" 或 "!=" 运算符~ 区分大小写~* 不区分大小写^~ 禁 ...
- nginx服务部署 说明
第1章 常用的软件 1.1 常用来提供静态服务的软件 Apache :这是中小型Web服务的主流,Web服务器中的老大哥, Nginx :大型网站Web服务的主流,曾经Web服务器中的初生牛犊 ...
- 1.Nginx服务应用
Nginx服务应用 Nginx的优点和作用 Nginx是一款高性能的HTTP和反向代理的服务器软件,还是一个IMAP/POP3/SMTP(邮件)代理服务器! Nginx在功能实现上都采用模块化结构设计 ...
随机推荐
- 洛谷 P1469 找筷子
题目描述 经过一段时间的紧张筹备,电脑小组的“RP餐厅”终于开业了,这天,经理LXC接到了一个定餐大单,可把大家乐坏了!员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘手的问题,筷子!CX ...
- [BZOJ1031][JSOI2007]字符加密Cipher(后缀数组)
传送门 算是个模板. 题目说循环,那就再复制一串拼接上. 然后求后缀数组,再搞就可以. 虽然是求后缀,会在后面多一些字符串,然而题目中说的是循环一圈,但是没有影响. ——代码 #include < ...
- BZOJ——T 2097: [Usaco2010 Dec]Exercise 奶牛健美操
http://www.lydsy.com/JudgeOnline/problem.php?id=2097 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: ...
- [转]十五天精通WCF——第十天 学会用SvcConfigEditor来简化配置
我们在玩wcf项目的时候,都是自己手工编写system.serviceModel下面的配置,虽然在webconfig中做wcf的服务配置的时候,vs提供大多 数的代码提示,但对于不太熟悉服务配置的小鸟 ...
- AutoCAD 2014:安装时发生allied product not found错误
有个朋友在安装AutoCAD 2014时不慎误删了一个文件夹,结果导致安装AutoCAD时总是跳出”allied product not found”的错误. Google搜了下,解决方案如下: 1. ...
- springmvc 中开发Server Send Event
springmvc 中开发Server Send Event 学习了:http://blog.csdn.net/leiliz/article/details/55195203 https://www. ...
- HDU 4183 Pahom on Water(最大流SAP)
Pahom on Water Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) T ...
- zoj2676 Network Wars(0-1分数规划,最大流模板)
Network Wars 07年胡伯涛的论文上的题:http://wenku.baidu.com/view/87ecda38376baf1ffc4fad25.html 代码: #include < ...
- vbs setkeys 特殊符号
set keys={~}!^@^#^${%%}{^&^}{^^}{*}{(}{)}{_}{-}{=}{+}.;:'"
- MTK camera 闪光灯Flashlight驱动调试流程
MTK camera 闪光灯Flashlight驱动调试流程 分类: MtkDev | 作者: topicdev 相关 | 发布日期 : 2014-09-26 | 热度 : 153° ...