您好,欢迎访问一九零五行业门户网

Nginx下配置PHP的URL重写,实现PHP伪静态

最近在写一个php实现的url压缩程序,其中最关键的地方就是url的伪静态,能够让xxx.com/111 这样的页面不出现404错误,而是达到预期的转换效果。 如果使用纯php,估计最多只能实现xxx.com/index.php/111,要更精简必须操作nginx或apach的重写,本文只介绍ngin
最近在写一个php实现的url压缩程序,其中最关键的地方就是url的伪静态,能够让xxx.com/111 这样的页面不出现404错误,而是达到预期的转换效果。
如果使用纯php,估计最多只能实现xxx.com/index.php/111,要更精简必须操作nginx或apach的重写,本文只介绍nginx的方法。
在nginx中打开相应的.conf文件,一般位于/usr/local/nginx/conf/vhost。
在其中加入以下代码:
location?/? {? if?(!-f?$request_filename){? set?$rule_0?1$rule_0;? }? if?(!-d?$request_filename){? set?$rule_0?2$rule_0;? }? if?($rule_0?=?21){? rewrite?^/([0-9a-za-z]+)/?$?/index.php?i=$1?last;? }? }
以上代码的功能是,将 xxx.com/ 后面的所有数字、大小写字母,直接重写到 index.php?i= 后面的内容。例如,输入 xxx.com/fuck 将会自动变成 xxx.com/index.php?i=fuck 。对倒数第三行的代码做适当修改,再配合php的_get函数,成功实现url伪静态。
原文地址:nginx下配置php的url重写,实现php伪静态, 感谢原作者分享。
其它类似信息

推荐信息