thinkPHP部署在Nginx站点二级目录时的伪静态规则

2017-09-15 13:14 栏目:技术开发 查看(8773)

湖南幸运赛车爱彩人彩票网 www.schu9.cn thinkPHP是一款国产的敏捷web开发框架,特别是5.0版本就是为API开发而生的,不管是做纯粹的web端项目,还是作为app的服务端都是非常不错的选择。这款框架上手特别快,只要具备良好的开发基本功的同学,基本上几天内就可以上手做项目了。今天项目组的小伙伴跟我说项目在开发环境是正常的,而到了测试环境则只有首页能够打开其他页面全部404.

其实thinkPHP拥有非常完善的路由机制,所以对伪静态是能够很好支持的。而开发环境是Apache,测试环境是Nginx,在服务器上创建虚拟目录后,通过Apache的组件可以直接加载网站目录中的.htaccess文件进行重写URL;而Nginx默认是不支持.htaccess的。首先我们可以知道thinkPHP在Nginx下的基础伪静态规则如下:

location / {
   if (!-e $request_filename){
	rewrite  ^(.*)$  /index.php?s=$1  last;   break;
   }
}

然而如果直接这样配置在服务器上,那么显然也是不行的,因为我们的项目是放在二级目录下面,而不是站点根目录下面(因为测试的时候会调用公司网站的微信接口,保持测试项目跟实际已经运行的项目保持在同一个域名下)。其实也比较简单,其实跟我们写apache的规则差不多。只需要把以上规则修改成如下即可:

location /jiewang/ {
   if (!-e $request_filename){
	rewrite  ^jiewang/(.*)$ /jiewang/index.php?s=$1  last;   break;
   }
}

是不是和写apache规则特别类似呢?对了,其中的jiewang就是这个项目的目录名称,其实不仅仅是thinkPHP,这种思维和写法也是适用于其他的框架的。

与我们的项目经理联系
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流

转载请注明出处:thinkPHP部署在Nginx站点二级目录时的伪静态规则 - 微构网络
分享:
  • 我国农村金融取得长足发展 2019-05-27
  • 世界自然遗产旅行地中国国家地理网 2019-05-27
  • 中央直属机关工委主要职责 2019-05-22
  • 打造“互联网+”,共享经济改变百姓生活 2019-04-22
  • 破财免灾!C罗愿向西班牙税务部门缴纳1880万欧元 2019-04-19
  • 中国品牌SUV新标杆 人民网试驾WEY VV7VV5 2019-04-19
  • 杨爱国:借助小博会促进尚志社会经济加快发展 2019-04-15
  • 泪目!川农院士逝世5年,夫人每日都去看他的雕像…思念如马,不停蹄! 2019-04-15
  • 海信世界杯首秀出奇招 竟打出俄文广告 2019-03-25
  • 财政部:对原产于美国的500亿美元进口商品加征关税 2019-03-11
  • 我和《人民日报》(我与人民日报·纪念人民日报创刊70周年) 2019-03-11
  • 杭州再增100个海绵城市项目 2018-11-08
  • 新华网申领新闻记者证资格审核公示 2018-11-08
  • 135| 140| 775| 716| 296| 818| 419| 392| 347| 56|