浅谈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 相关文章推荐
高亮度显示php源代码
Oct 09 PHP
生成ubuntu自动切换壁纸xml文件的php代码
Jul 17 PHP
php中实现简单的ACL 完结篇
Sep 07 PHP
有关php运算符的知识大全
Nov 03 PHP
php安全开发 添加随机字符串验证,防止伪造跨站请求
Feb 14 PHP
解析php根据ip查询所在地区(非常有用,赶集网就用到)
Jul 01 PHP
PHP中比较时间大小实例
Aug 21 PHP
PHP实现的DES加密解密封装类完整实例
Apr 29 PHP
解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
May 11 PHP
thinkPHP框架中执行原生SQL语句的方法
Oct 25 PHP
PHP观察者模式示例【Laravel框架中有用到】
Jun 15 PHP
thinkPHP5.0框架验证码调用及点击图片刷新简单实现方法
Sep 07 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程序设计中的MVC编程思想
2014/07/28 PHP
从零开始学YII2框架(三)扩展插件yii2-gird
2014/08/20 PHP
php运行时动态创建函数的方法
2015/03/16 PHP
php自定义urlencode,urldecode函数实例
2015/03/24 PHP
PHP面试题之文件目录操作
2015/10/15 PHP
php实现有序数组打印或排序的方法【附Python、C及Go语言实现代码】
2016/11/10 PHP
PHP使用file_get_contents发送http请求功能简单示例
2018/04/29 PHP
文本框的字数限制功能jquery插件
2009/11/24 Javascript
js左右弹性滚动对联广告代码分享
2014/02/19 Javascript
jquery获得当前html页面源码的方法
2015/07/14 Javascript
JS数组返回去重后数据的方法解析
2017/01/03 Javascript
canvas绘制多边形
2017/02/24 Javascript
js中开关变量使用实例
2017/02/24 Javascript
前端构建工具之gulp的配置与搭建详解
2017/06/12 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
2017/08/18 Javascript
jQuery结合jQuery.cookie.js插件实现换肤功能示例
2017/10/14 jQuery
parabola.js抛物线与加入购物车效果的示例代码
2017/10/25 Javascript
Angular CLI在Angular项目中如何使用scss详解
2018/04/10 Javascript
JavaScript数组、json对象、eval()函数用法实例分析
2019/02/21 Javascript
了解在JavaScript中将值转换为字符串的5种方法
2019/06/06 Javascript
Vue 中可以定义组件模版的几种方式
2019/08/06 Javascript
解决Vue 刷新页面导航显示高亮位置不对问题
2019/12/25 Javascript
微信小程序聊天功能的示例代码
2020/01/13 Javascript
详解Python进程间通信之命名管道
2017/08/28 Python
Python实现根据日期获取当天凌晨时间戳的方法示例
2019/04/09 Python
pandas中遍历dataframe的每一个元素的实现
2019/10/23 Python
Django分组聚合查询实例分享
2020/04/29 Python
django 将自带的数据库sqlite3改成mysql实例
2020/07/09 Python
浅析HTML5 meta viewport参数
2020/10/28 HTML / CSS
如何定义一个可复用的服务
2014/09/30 面试题
财务管理专业毕业生求职信范文
2013/09/21 职场文书
QA工程师岗位职责
2013/11/20 职场文书
党的群众路线对照检查材料思想汇报(学校)
2014/10/04 职场文书
质量承诺书格式范文
2015/04/28 职场文书
python利用pandas分析学生期末成绩实例代码
2021/07/09 Python
vue实力踩坑之push当前页无效
2022/04/10 Vue.js