LNMP一键安装包+Thinkphp搭建基于pathinfo模式的路由
内容摘自http://www.cnblogs.com/codefly-sun/p/5703829.html
LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat/Fedora、Debian/Ubuntu/Raspbian/Deepin VPS或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、 LAMP(Apache/MySQL/PHP)生产环境的Shell程序。同时提供一些实用的辅助工具如:虚拟主机管理、FTP用户管理、Nginx、 MySQL/MariaDB、PHP的升级、常用缓存组件Redis、Xcache等的安装、重置MySQL root密码、502自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。
下载地址:https://lnmp.org/
1:让nginx支持pathinfo模式
(1):在/usr/local/nginx/conf/nginx.conf文件中注释掉以下代码
#include php-enable.conf
(2):在/usr/local/nginx/conf/nginx.conf文件中添加以下代码
include enable_pathinfo.conf
2:通过nginx的rewrite功能去除url中的入口文件(比如说index.php)
//实例如下
location /test {
if (!-e $request_filename){
rewrite ^/test/$ /test/index.php;
rewrite ^/test/(.*)$ /test/index.php?s=$1 last;
}
}
3:配置TP框架,使得U()生成不带入口文件的url
//在config文件中,配置路由方式为rewrite模式
URL_MODEL' => 2,
4:配置TP框架,使得TP分页处理类生成的url中不含有入口文件名
//在入口文件中,定义常量
define (__APP__,"path")
//path代表的是入口文件相当于网站根目录的路径。
//如果入口文件在网站根目录下,就
define(__APP__,"")
//如果入口文件在网站根目录下的/test/下,就
define(__APP__,"/test")
5:如果需要,还可以配置TP框架,开启伪静态