浅谈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 相关文章推荐
PHP4实际应用经验篇(6)
Oct 09 PHP
PHP 作用域解析运算符(::)
Jul 27 PHP
PHP+SQL 注入攻击的技术实现以及预防办法
Jan 27 PHP
php基础教程 php内置函数实例教程
Aug 21 PHP
php设计模式小结
Feb 15 PHP
解析php中如何直接执行SHELL
Jun 28 PHP
php多文件上传实现代码
Feb 20 PHP
php判断当前操作系统类型
Oct 28 PHP
PHP实现通过URL提取根域名
Mar 31 PHP
PHP自定义函数判断是否为Get、Post及Ajax提交的方法
Jul 27 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
Nov 16 PHP
php判断目录存在的简单方法
Sep 26 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&&mysql)三
2006/10/09 PHP
ThinkPHP的模版中调用session数据的方法
2014/07/01 PHP
php实现将数组转换为XML的方法
2015/03/09 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
js判断变量是否空值的代码
2008/10/26 Javascript
JavaScript 代码压缩工具小结
2012/02/27 Javascript
javascript分页代码实例分享(js分页)
2013/12/13 Javascript
javascript计算用户打开网页的停留时间
2014/01/09 Javascript
Ajax提交与传统表单提交的区别说明
2014/02/07 Javascript
js获取元素的外链样式的简单实现方法
2016/06/06 Javascript
jQuery插件EasyUI设置datagrid的checkbox为禁用状态的方法
2016/08/05 Javascript
JavaScript中从setTimeout与setInterval到AJAX异步
2017/02/13 Javascript
Angularjs为ng-click事件传递参数
2017/06/15 Javascript
Angular实现的内置过滤器orderBy排序与模糊查询功能示例
2017/12/29 Javascript
微信小程序动态增加按钮组件
2018/09/14 Javascript
JS实现倒计时图文效果
2018/11/17 Javascript
JS实现的类似微信聊天效果示例
2019/01/29 Javascript
jQuery实现ajax的嵌套请求案例分析
2019/02/16 jQuery
原生JavaScript写出Tabs标签页的实例代码
2020/07/20 Javascript
[01:24:09]Ti4 冒泡赛第二轮DK vs C9 1
2014/07/14 DOTA
Python实现的文本编辑器功能示例
2017/06/30 Python
Python实现登录接口的示例代码
2017/07/21 Python
Python基于回溯法子集树模板解决选排问题示例
2017/09/07 Python
对pandas进行数据预处理的实例讲解
2018/04/20 Python
pygame游戏之旅 调用按钮实现游戏开始功能
2018/11/21 Python
python 解决flask uwsgi 获取不到全局变量的问题
2019/12/22 Python
如何实现在jupyter notebook中播放视频(不停地展示图片)
2020/04/23 Python
详解Python中的编码问题(encoding与decode、str与bytes)
2020/09/30 Python
水果花束:Fruit Bouquets
2017/12/20 全球购物
支票、地址标签、包装纸和慰问卡:Current Catalog
2018/01/30 全球购物
美国林业供应商:Forestry Suppliers
2019/05/01 全球购物
速卖通欧盟:Aliexpress EU
2020/08/19 全球购物
Ruby如何创建一个线程
2013/03/10 面试题
拾金不昧表扬信范文
2014/01/11 职场文书
股东合作协议书
2014/09/12 职场文书
关于使用Redisson订阅数问题
2022/01/18 Redis