阿里云服务器Nginx支持Thinkphp Rewrite 重写

精选文章 2014年4月19日 4.48K

最近用阿里云部署Thinkphp写的网站但发现竟然无法进行url重写,原来是因为ThinkPHP使用pathinfo模式实现重写,而nginx默认是不带pathinfo。

ThinkPHP在app/Conf/config.php可以配置URL_MODEL选项,有三种类型:

1. URL_MODEL => 1,默认支持pathinfo

2. URL_MODEL => 2,url重写模式,通过配置url重写来实现

3. URL_MODEL => 3,URL兼容模式,需要生成URL的地方采用U方法动态生成

这里,我们选择2,配置url重写模式,然后配置nginx:

# 在server段location /加载此内容

location / {

if (!-e $request_filename) {

rewrite  ^(.*)$  /index.php?s=$1  last;

break;

}

}

reload nginx,就可以访问了。

相关文章

文章评论

  • 小菜鸟

    这个教程可以详细点么?“ 在server段location /加载此内容”哪些文件的server段呢?“在app/Conf/config.php可以配置URL_MODEL选项”这个需要怎么配置呢?代码是什么样的呢?

    2014年6月16日
您需要之后才可以评论
0点赞 1评论 收藏 QQ分享 微博分享