Nginx+PHP实现无后缀访问

其实这方面的资料在网上找了下不算多,但是也算很基本的东西吧,博主之前一直在思考能不能不通过服务器转发或者跳转就达到目的,也就是通过http://xxxx.com/test 这样的方式访问http://xxxx.com/test.php之类的页面,最初尝试直接在php中实现,发现php的配置文件是不能这样解析的,在php的配置文件中写上正则表达式会导致php-fpm直接挂掉.
所以只能从nginx配置入手,nginx的配置文件是支持正则的,所以要么通过请求地址判断是否301转发,此外也可以在php的关联配置下新增一个配置组

#这里写需要正常解析的后缀,这里加了解析类型后别忘了在php-fpm的配置文件中启用security.limit_extensions = .php .php7
location ~ (.php7|.php)$ {
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /$document_root$fastcgi_script_name;
    include        fastcgi_params;
}
#这里为新增的解析类型,如果需要准确匹配可以自行修改正则,此处为示例,解析除上述配置外的所有文件类型,也包括无后缀文件
location ~ $ {
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /$document_root$fastcgi_script_name.php;
    include        fastcgi_params;
}

“`
经测试这样是可行的
文件结构
测试结果
当然也可以通过301转向实现.

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值