转自:http://www.jbxue.com/article/4727.html
Nginx中一些常用的URL 重写方法介绍,有需要的朋友可以参考下。
url重写应该不陌生,不管是SEO URL 伪静态的需要,还是在非常流行的wordpress中,重写都是无处不在的。
1. 在 Apache 的写法
RewriteRule (.*) http://www.nginx.org$1
在 Nginx 可以对应写成:
listen 80;
server_name www.nginx.org nginx.org;
if ($http_host = nginx.org) {
rewrite (.*) http://www.nginx.org$1;
}
...
}
但 Nginx 作者更建议的方法是:
server {
listen 80;
server_name nginx.org;
rewrite ^ http://www.nginx.org$request_uri?;
}
server {
listen 80;
server_name www.nginx.org;
...
}
问题部分
1. 请教一下,nginx的rewrite规则怎么写?
比如将 http://www.jbxue.com/222.html rewrite 为 http://www.jbxue.com/222.htm
{
rewrite ^(.*)\.html $1.htm permanent;
}
2. 下面url要怎么写rewrite?
www.aaa.com/search/?wd=搜索内容 ==> www.aaa.com/searchpage?keyword=搜索内容
rewrite (.*) /searchpage$1 ;
}
3. 请求的url如下 /item/12345/index.html 重定向到/item/12/12345/index.html
规则就是id除1000,如果小于id小于1000,则为/item/0/id/index.html
不知道说清楚没有,这个rewrite规则该怎么写啊?
刚看了文档,似乎可以
http://wiki.nginx.org/HttpRewriteModule
/photos/123456 -> /path/to/photos/12/1234/123456.png
rewrite "/photos/([0-9] {2})([0-9] {2})([0-9] {2})" /path/to/photos/$1/$1$2/$1$2$3.png;
备注:
有一个工具可以apache htaccess 文件转 nginx rewrite:
http://www.anilcetin.com/convert-apache-htaccess-to-nginx/
您可能感兴趣的文章:
nginx rewrite(nginx url地址重写)的配置示例
nginx实现url重写-rewrite实例参考
nginx配置url重写及自定义404错误页面等
Nginx常用的 URL 重写方法
超详细的 NGINX URL重写实例讲解
相关推荐
Nginx_URL重写模块(已译) 不用多说吧?
nginx常用bat批处理命令,放在nginx同级目录下使用,可快速的重启、停止、关闭nginx。 quit.bat(退出Nginx) reload.bat(重启Nginx) stop.bat(停止Nginx)
Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解
CI多服务器.某些目录不重写nginx/IIS/Apache rewrite CI rewrite
Nginx 重写规则教程
ecshop-商城url重写实战 Nginx入门到实践-中间件服务、应用层负载均衡、应用层安全防护、动静分离等
Nginx常用操作命令
url_hash 是nginx的第三方模块,nginx本身不支持,需要打patch . Url_hash 你nginx在做负载均衡的时候。把转发的URL 以hash的形式保存。这样可以保证同一个URL始终 分给同一个real server,来提高访问速度。
Nginx判断来路http://aaaa.com查询语句是否包含有Q=**,重写到https://xxxx.com/?Q=**
web建站常用nginx配置参数详解,可以做到基本的通用配置。(虚拟主机,反向代理,域名跳转)
可以隐藏真实的访问地址,可以保证网页安全。
nginx.conf nginx常用配置
主要介绍了Nginx URL重写(rewrite)机制原理及使用实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
--------------------Apache--------------------- 1、httpd.conf配置文件中加载了mod_rewrite.so模块 2、AllowOverride None 将None改为 All 3、确保URL_MODEL设置为2 ...规则内容见url_rewrite文件夹下的Nginx.con
nginx常用命令,方便技术人员管理nginx
Nginx如何配置url_hash转发方式.docx
Nginx_反向代理、负载均衡、页面缓存、URL重写及读写分离详解