[文章作者:狂奔的鹿(陆松林) 本文版本:v1.0 转载请注明原文链接:http://dynamiclu.iteye.com/]
近期在作一个nginx换apache的项目,涉及到url的rewrite, 关于两者的区别, 这边就不提了, google一下,到处都是。
值得一提的是:
apache里的RewriteCond 转化成nginx的配置时, 都说用if并OK;
若是:
apache:
RewriteCond %{QUERY_STRING} ^search_content=(.*)$
RewriteRule ^/search.jspa$ http://abc.domian.cn/search.jsp?search_content=%1 [L,NC,NE,R=301]
转化成nginx:
rewrite "^/search.jspa$" http://abc.domian.cn/search.jsp?search_content=$1 permanent;
如果是:
RewriteCond %{QUERY_STRING} ^id=(.*)$
RewriteRule ^/search.jspa$ http://abc.domian.cn/html_%1.html [L,NC,NE,R=301]
仔细看一下,还原成伪链接
方式1:
rewrite "^search.jspa$" http://istock.jrj.com.cn/html_$1.html permanent;
配置文件不报错,但始终无效。
换方式2:
if($query_string ~ ^id=(.*)$) {
set $id_tmp $1;
rewrite "^/remen/sortsearch.jspa$" http://abc.domian.cn/html_$id_tmp.html permanent;
}
报错如下图:
google了近一个小时,没发现是哪的错, 怀疑起nginx的全局变量$query_string, 添加到log_format里,日志能打印出来。
无意中,比较一下if的差别,才发现原来是"if("写错了,中间需要多一个空格,需要写成"if ("才成。
方式2的配置改成:
if ($query_string ~ ^id=(.*)$) {
set $id_tmp $1;
rewrite "^/remen/sortsearch.jspa$" http://abc.domian.cn/html_$id_tmp.html permanent;
}
OK, 终于通过了。 开发出身的人,if then else写多了,系统配置时很容易犯这些错误。
[文章作者:狂奔的鹿(陆松林) 本文版本:v1.0 转载请注明原文链接:http://dynamiclu.iteye.com/]
- 大小: 14.1 KB
分享到:
相关推荐
Nginx的Rewrite规则与实例
实例讲解nginx的rewrite规则
Nginx如何配置url_hash转发方式.docx
Nginx完整配置说明,入门级的,高级指令不在这,得自己买书看,别下错了,基本部署用的
本文是关于 nginx rewrite常用示例。
#nginx-rewrite彻底解决discz X3多入口问题 #本规则仅适用于nginx。请大家举一反三,根据自己的实际应用情况进行适当调整。有点繁琐,但是有用。 #本文由丽江热线CTO shwan原创,转载请保留本行信息。应用效果见:...
第7章 Nginx的Rewrite规则与实例.pdf 第8章 Nginx模块开发.pdf 第9章 Nginx的Web缓存服务与新浪网的开源NCACHE模块.pdf 第10章 Nginx在国内知名网站中的应用案例.pdf 第11章 Nginx的非典型应用实例.pdf 第12章 Nginx...
nginx配置location总结及rewrite规则写法
Nginx常用Rewrite伪静态法则 信赖此刻大部门用Linux VPS的伴侣都在利用这个敏捷传布的Nginx,本日就清算一下最常见的PHP法式的Rewrite(伪静态法则)。 Wordpress: location / { index index.html index.php; if ...
Nginx中rewrite实现二级域名、三级域名、泛域名、路径的重写[文].pdf
nginx多域名配置示例 php多级域名配置 二级域名配置示例 nginx伪静态示例
提供了小程序https服务在nginx环境下的配置示例,包括https配置和小程序扫二维码打开小程序时需要在nginx服务端放置小程序二维码扫描校验文件的配置
lnmp环境中nginx的rwrite规则配置
第1章 Nginx简介 第2章 Nginx服务器的安装与配置 第3章 Nginx的基本配置与优化 第4章 Nginx与PHP(FastCGI)的安装、配置与优化 ...第7章 Nginx的Rewrite规则与实例 第8章 Nginx模块开发 ..........................
nginx.conf nginx-1.20.1.tar.gz 这是关于centos8的nginx 和nginx 的配置https文件
前因 搭建一个网站传统的方法是使用一个web服务器去解析文件入口文件,如使用Nginx,Apache解析到对应的入口文件,但是随着技术的发展,...Nginx端口映射配置 server { listen 80; server_name rbac.dev-lu.com; #
包含了springboot 打包jar部署的一键启动和终止脚本(.sh)、nginx生产环境配置文件(.conf)参考示例和自定义错误页面资源,适合中小公司(个人)Linux系统部署springboot项目
nginx图片服务器配置和https配置
Nginx URL重写(rewrite)介绍 和apache等web服务软件一样,rewrite的组要功能是实现RUL地址的重定向。Nginx的rewrite功能需要PCRE软件的支持,即通过perl兼容正则表达式语句进行规则匹配的。默认参数编译nginx就会...
3.1. Nginx的主配置文件概述 3.1.1. 认识配置文件 3.1.2. nginx的配置文件结构 3.1.3. nginx的全局配置 3.2. events配置 3.3. http的配置 3.4. nginx重要指令之location 4. nginx中的rewrite 4.1. 什么是...