thinkphp nginx pathinfo模式支持
2024-09-01 00:55:48
最近一个项目中使用了ThinkPHP做为开发框架,URL上我们使用了PATHINFO模式,但是Nginx默认是不支持PATHINFO的,需要进行手动配置才可以,于是我们按照了以下方法进行了Nginx的PATHINFO支持配置:
修改nginx.conf,找到server中的 location ~ .php${},修改为location ~ .php {},并在其中增加以下内容: set $path_info "";
set $real_script_name $fastcgi_script_name;
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; 不过无论我们如何测试,都发现PATHINFO模式总是不能正确运行,就算运行后,{:U}方法也总是出错,打印$_SERVER后发现PHP_SELF总是不对。
但是依然PATHINFO不能正确正常工作,于是我们确定是ThinkPHP的配置问题,发现其实是ThinkPHP的_PHP_FILE的问题,在入口文件index.php中加入配置define('_PHP_FILE_',$_SERVER['SCRIPT_NAME']);,问题解决。
如果$_SERVER['SCRIPT_NAME'] 路径也不对,请先替换为正确的文件路径。
最新文章
- iOS开发之微信聊天页面实现
- Android文件存储
- jQuery查看dom元素上绑定的事件列表
- Django 初探--Django的开发服务器及创建数据库(笔记)
- Linux下使用多线程模拟异步网络通信
- CString 与 std::string 相互转化
- Android eng版系统烧录
- JBOD
- Android:后台给button绑定onClick事件、当返回项目到手机页面时提示是否退出APP
- python画出心形图
- 包装类及 LeetCode 每日一题
- git命令的理解与扩展
- R语言读取EXCEL文件的各种方法
- Eclipse 运行导入的 Java 项目时,Error:A JNI error has occurred
- javascript最全最好的判断数组的方法
- C Mergeable Stack(list超好用)
- 字符IO流
- 区分Web Server和应用服务器
- python 全栈开发,Day54(node.js初识)
- 机器学习实战(Machine Learning in Action)学习笔记————06.k-均值聚类算法(kMeans)学习笔记
热门文章
- Spring MVC 中Ajax返回字符串
- Tomcat 关闭时报错
- java FileI(O)nputStream为什么比BufferedI(O)utputStream慢?
- ADexplorer - 用来查看AD的工具
- 转:TCP/IP协议选项——TCP_KEEPALIVE .
- ECMAScript和JavaScript的区别,ECMAScript发展更新历史,ECMAScript5和ECMAScript6的新特性及浏览器支持情况,ECMAScript 5/ECMAScript 2015正式发布
- .net core +codefirst(.net core 基础入门,适合这方面的小白阅读) 【我们一起写框架】领域驱动设计的CodeFirst框架(一)—序篇
- 如何让iOS模拟器也能测试蓝牙4.0程序?
- unity, 不要change Default sharedMaterial
- vue2.0实现图片加载失败默认显示图片