浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法


Posted in PHP onOctober 12, 2019

1,心血来潮,把ThinkPHP项目部署到了nginx上,以上是在apache上跑的。突然发现nginx不支持pathinfo功能,难怪在TP中调怎么都没管用。

2,开始上文件了,比网上其他一些杂的好多了:

server { 
listen 80; 
#listen [::]:80; 
server_name www.tp.com tp.com; 
index index.html index.htm index.php default.html default.htm default.php; 
root /home/wwwroot/www.tp.com; 
include index.php.conf; 
#error_page 404 /404.html; 
#include enable-php.conf; 
include enable-php-pathinfo.conf; ##这个地方需要说明下:我用的是lnmp一键安装包,可能这个pathinfo.conf配置文件名有些不一样, 
## 有文件名为enable-php.conf,也有enable-php-pathinfo.conf 
## 目录在/usr/local/nginx/conf 可以自己去看看,带有pathinfo 
#error_page 404 /404.html

 location /app/ {  #因为我的项目入口文件是放到app目录中的(app目录与Think目录同级),这样实现了隐藏index.php功能         
  if (!-e $request_filename) {  
  rewrite ^/app/(.*)$ /app/index.php/$1 last;
  break;
  }
 }
 location ~ ^(.+\.php)(.*) {
try_files $uri =404; 
fastcgi_pass 127.0.0.1:9000; 
fastcgi_pass unix:/run/php5-fpm.sock; 
fastcgi_index index.php; 
include fastcgi_params; 
# include fcgi.conf;

set $real_script_name $fastcgi_script_name; 
set $path_info “”; 
if ($fastcgi_script_name ~ “^(.+?.php)(/.+)$”){ 
set $real_script_name $1; 
set $path_info $2; 
} 
fastcgi_param SCRIPT_FILENAME $document_root 
$real_script_name; 
fastcgi_param SCRIPT_NAME $real_script_name; 
fastcgi_param PATH_INFO $path_info; 
} 
access_log /home/wwwlogs/www.tp.com.log; 
}

直接上我的配置文件截图吧:

浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法

我的目录结构

浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法

看,现在可以支持以下路由了,pathinfo以及rewrite隐藏index.php入口文件

浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法

浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法

浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法

以上这篇浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
apache+mysql+php+ssl服务器之完全安装攻略
Sep 05 PHP
PHP操作mysql函数详解,mysql和php交互函数
May 19 PHP
php中禁止单个IP与ip段访问的代码小结
Jul 04 PHP
显示youtube视频缩略图和Vimeo视频缩略图代码分享
Feb 13 PHP
Yii使用ajax验证显示错误messagebox的解决方法
Dec 03 PHP
PHP+shell实现多线程的方法
Jul 01 PHP
PHP仿微信多图片预览上传实例代码
Sep 13 PHP
laravel5.4生成验证码的实例讲解
Aug 05 PHP
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
Sep 15 PHP
Yii框架操作cookie与session的方法实例详解
Sep 04 PHP
PHP设计模式入门之迭代器模式原理与实现方法分析
Apr 26 PHP
ThinkPHP5框架中使用JWT的方法示例
Jun 03 PHP
laravel 去掉index.php伪静态的操作方法
Oct 12 #PHP
laravel5环境隐藏index.php后缀(apache)的方法
Oct 12 #PHP
解决laravel(5.5)访问public报错的问题
Oct 12 #PHP
php实现银联商务公众号+服务窗支付的示例代码
Oct 12 #PHP
Laravel解决nesting level错误和隐藏index.php的问题
Oct 12 #PHP
laravel框架实现去掉URL中index.php的方法
Oct 12 #PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
Oct 12 #PHP
You might like
php DOS攻击实现代码(附如何防范)
2012/05/29 PHP
php面向对象 字段的声明与使用
2012/06/14 PHP
PHP对MongoDB[NoSQL]数据库的操作
2013/03/01 PHP
PHP遍历并打印指定目录下所有文件实例
2014/02/10 PHP
Windows下的PHP安装pear教程
2014/10/24 PHP
PHP中使用虚代理实现延迟加载技术
2014/11/05 PHP
PHP使用mysqldump命令导出数据库
2015/04/14 PHP
php实现生成code128条形码的方法详解
2017/07/19 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
2017/08/29 PHP
实例详解jQuery表单验证插件validate
2016/01/18 Javascript
JQuery插件Marquee.js实现无缝滚动效果
2016/04/26 Javascript
深入浅出讲解ES6的解构
2016/08/03 Javascript
浅谈jquery中next与siblings的区别
2016/10/27 Javascript
vuex实现简易计数器
2016/10/27 Javascript
JavaScript中object和Object的区别(详解)
2017/02/27 Javascript
JavaScript中常见的八个陷阱总结
2017/06/28 Javascript
Vue波纹按钮组件制作
2018/04/30 Javascript
关于微信公众号开发无法支付的问题解决
2018/12/28 Javascript
JavaScript基于遍历操作实现对象深拷贝功能示例
2019/03/05 Javascript
vue+element UI实现树形表格带复选框的示例代码
2019/04/16 Javascript
Vue+Java 通过websocket实现服务器与客户端双向通信操作
2020/09/22 Javascript
js实现鼠标拖曳效果
2020/12/30 Javascript
Python中列表的一些基本操作知识汇总
2015/05/20 Python
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
通过Py2exe将自己的python程序打包成.exe/.app的方法
2018/05/26 Python
深入flask之异步非堵塞实现代码示例
2018/07/31 Python
python将txt等文件中的数据读为numpy数组的方法
2018/12/22 Python
Python对ElasticSearch获取数据及操作
2019/04/24 Python
PyQt5事件处理之定时在控件上显示信息的代码
2020/03/25 Python
Python实现快速大文件比较代码解析
2020/09/04 Python
python实现感知机模型的示例
2020/09/30 Python
纪伊国屋泰国网上书店:Kinokuniya泰国
2017/12/24 全球购物
Dodax奥地利:音乐、电影、书籍、玩具、电子产品等
2019/08/31 全球购物
我的长生果教学反思
2014/04/28 职场文书
大学教师个人总结
2015/02/10 职场文书
西安事变观后感
2015/06/12 职场文书