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

 更新时间:2019年10月12日 15:50:08   作者:胡毅Ethan  
今天小编就为大家分享一篇浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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; 
}

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

我的目录结构

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

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

相关文章

  • yii2.0框架使用 beforeAction 防非法登陆的方法分析

    yii2.0框架使用 beforeAction 防非法登陆的方法分析

    这篇文章主要介绍了yii2.0框架使用 beforeAction 防非法登陆的方法,结合实例形式分析了yii2.0框架中beforeAction的基本原理、用法及防止非法登陆的相关操作技巧,需要的朋友可以参考下
    2019-09-09
  • 详解phpstorm2020最新破解方法

    详解phpstorm2020最新破解方法

    PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能。这篇文章主要介绍了phpstorm2020最新破解方法(2020年7月仍可用),需要的朋友可以参考下
    2020-09-09
  • 浅谈PHP进程管理

    浅谈PHP进程管理

    这篇文章主要介绍了PHP进程管理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • 提交表单后 PHP获取提交内容的实现方法

    提交表单后 PHP获取提交内容的实现方法

    下面小编就为大家带来一篇提交表单后 PHP获取提交内容的实现方法。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • Yii2框架实现数据库常用操作总结

    Yii2框架实现数据库常用操作总结

    本篇文章主要介绍了Yii2框架实现数据库常用操作总结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法

    ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法

    这篇文章主要介绍了ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法,针对ThinkPHP配置文件config.php设置SHOW_RUN_TIME后不能显示运行时间情况下的解决方法,涉及针对ThinkPHP底层源文件的修改,需要的朋友可以参考下
    2015-10-10
  • 浅析THINKPHP的addAll支持的最大数据量

    浅析THINKPHP的addAll支持的最大数据量

    这篇文章主要介绍了THINKPHP的addAll支持的最大数据量,需要的朋友可以参考下
    2015-02-02
  • PHP中ID设置自增后不连续的原因分析及解决办法

    PHP中ID设置自增后不连续的原因分析及解决办法

    这篇文章主要介绍了PHP中ID设置自增后不连续的原因分析及解决办法的相关资料,需要的朋友可以参考下
    2016-08-08
  • laradock环境docker-compose操作详解

    laradock环境docker-compose操作详解

    在本篇文章中小编给大家整理的是关于laradock环境docker-compose操作的相关知识点内容,有需要的朋友们参考学习下。
    2019-07-07
  • PHP 超链接 抓取实现代码

    PHP 超链接 抓取实现代码

    因为最近要做一个类似专业搜索引擎的东西,需要抓取网页的所有超链接。大家帮忙测试一下子,下面的代码是否可以针对所有的标准超链接。
    2009-06-06

最新评论