location / { proxy_pass http://tomcat_server;} 三、访问重新rewrite3.1rewrite的概述rewrite功能就是,使用nginx提供的全局变量或自己设置的变量,结合正则表达式和标志位实现url重写以及重定向 。rewrite只能放在server{},location{},if{}中,并且默认只能对域名后边的除去传递的参数外的字符串起作用 。
例如:http://www.fzr.com/zzj/index.php?id=1&u=str 只对/zzj/index.php重写 。
3.2rewrite 执行顺序如下(1) 执行 server 块里面的 rewrite 指令(2) 执行 location 匹配(3) 执行选定的 location 中的 rewrite 指令语法: rewrite [flag];
- regex :表示正则匹配规则
- replacement :表示跳转后的内容
- flag :表示 rewrite 支持的 flag 标记
- last :本条规则匹配完成后,继续向下匹配新的location URI规则,一般用在 server 和 if 中
- break :本条规则匹配完成即终止,不再匹配后面的任何规则,一般使用在 location 中
- redirect:返回302临时重定向,浏览器地址会显示跳转后的URL地址
- permanent:返回301永久重定向,浏览器地址栏会显示跳转后的URL地址 。
现在公司旧域名www.fzr.com有业务需求变更,需要使用新域名www.zzj.com代替,但是旧域名不能废除,需要跳转到新域名上,而且后面的参数保持不变 。
vim /usr/local/nginx/conf/nginx.confserver { listen 80; server_name www.fzr.com; #域名修改 charset utf-8; access_log /var/log/nginx/www.fzr.com-access.log; #日志修改 location / { #添加域名重定向 if ($host = 'www.fzr.com'){ #$host为rewrite全局变量,代表请求主机头字段或主机名 rewrite ^/(.*)$ http://www.zzj.com/$1 permanent; #$1为正则匹配的内容,即域名后边的字符串 } root html; index index.html index.htm; }}echo "192.168.10.10 www.fzr.com www.zzj.com" >> /etc/hostssystemctl restart nginx #重启服务浏览器输入模拟访问 http://www.fzr.com/test/index.html会跳转到www.zzj.com/test/index.html,查看元素可以看到返回301,实现了永久重定向跳转,而且域名后的参数也正常跳转4.1.2 实例操作:基于域名跳转
(1)修改主配置文件
经验总结扩展阅读
- 2023食品科学与工程类热门专业有哪些 就业前景怎么样
- 2023自然保护与环境生态类热门专业有哪些 比较好的专业
- 2023公共卫生与预防医学类热门专业有哪些 比较好的专业
- 2023管理科学与工程类热门专业有哪些 比较好的专业
- 丙火与辛金灵魂伴侣 五行无克运势提升
- 练大腿的方法 练大腿的方法都有哪些
- 谁最喜欢甲木女 与丁火男白首不分离
- 甲木男喜欢女生类型 外在与内在并存
- 雄黄粉驱蛇怎么用
- 蒜薹与蒜苔哪个正确
