nginx加载伪静态文件.htaccess

很多网站需要采用伪静态来访问动态网页。所以像phpcms这样的系统,都提供了一个.htaccess文件,供写伪静态规则。但这个规则是针对Apache的。在nginx服务器上并不起作用。
nginx 可以直接将伪静态规则写在配置文件中,但这个需要有服务器管理权限,普通站长不能经常操作或者不会操作。所以,放在网站根目录下的.htaccess文件,更方便站长随时修改添加伪静态规则。
要让.htaccess在nginx下起作用,办法其实也简单。就是在nginx的相关网站配置中,引入这个伪静态规则文件就可以了。比如:
include /data/wwwroot/phpcms/.htaccess;

但事情到这里并没有完成。因为Apache下的伪静态规则,跟nginx下的并不一样。所以需要对原默认的规则写法进行修改。
如phpcms提供的原始.htaccess文件是这样的:

RewriteEngine on
RewriteRule ^content-([0-9]+)-([0-9]+)-([0-9]+).html index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3

在nginx下,要去掉第一行的RewriteEngine on。然后,RewriteRule要改成rewrite,后面则要加上分号结束。变成这样:

rewrite ^content-([0-9]+)-([0-9]+)-([0-9]+).html index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last

总结,只要在nginx中引入这个文件,就可以由网站管理员随时添加修改伪静态规则了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值