利用nginx的url rewrite技术,实现伪静态化

在大并发量网站中经常需要使用到静态化技术,但是有时候被静态化的页面可能会因为某种原因被删除了,当用户使用静态页面的url地址来访问时,就会出现404错误。

 

因此我们有这样的想法,当静态页面存在的时候直接返回静态页面,如果不存在的时候指向某个地址生成静态页。

 

这种想法是可以实现的,下面介绍一下使用nginx的url rewrite技术来实现的配置方法

 

if (!-e $request_filename){
    rewrite ^/([a-z-A-Z]+)/([a-z-A-Z]+)/?(.*)$ /index.php?controller=$1&$2&$3 permanent
;
}

 

上面的例子匹配了如下的字符串 /abc/decf/abcd /index.php?controller=abc&decf&abcd

 

当用户访问/abc/decf/abcd所表示的页面不存在时,系统会重定向到/index.php?controller=abc&decf&abcd

 

是不是很方便。

 

nginx很好很强大。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值