VPS侦探论坛

 找回密码
 注册
搜索
查看: 923|回复: 2

lnmp1.5 安装后放thinkphp 3.2的项目后隐藏了域名URL后的index留下了.php导致无法正常访问

[复制链接]
发表于 2018-5-24 12:25:48 | 显示全部楼层 |阅读模式



打开域名可以正常访问,但是跳转其它模块后,地址中的index.php被去掉的index只留下了.php导致不能正常访问

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org/
发表于 2018-5-24 13:02:30 | 显示全部楼层



这个应该是程序上的问题,你可以自己看看源代码,源代码上输出的url就是不带index的
解决方法1: 修改php.in 将里面的 cgi.fix_pathinfo=0 改成 cgi.fix_pathinfo=1 但会造成有安全问题
解决方法2:修改thinkphp 3的代码,编辑ThinkPHP/ThinkPHP.php 查找 if(IS_CGI)
将原来的
  1. if(IS_CGI) {
  2.             //CGI/FASTCGI模式下
  3.             $_temp  = explode('.php',$_SERVER['PHP_SELF']);
  4.             define('_PHP_FILE_',    rtrim(str_replace($_SERVER['HTTP_HOST'],'',$_temp[0].'.php'),'/'));
  5.         }else {
  6.             define('_PHP_FILE_',    rtrim($_SERVER['SCRIPT_NAME'],'/'));
  7.         }
复制代码


替换为
  1. if(IS_CGI) {
  2.             //CGI/FASTCGI模式下
  3.             //$_temp  = explode('.php',$_SERVER['PHP_SELF']);
  4.             //define('_PHP_FILE_',    rtrim(str_replace($_SERVER['HTTP_HOST'],'',$_temp[0].'.php'),'/'));
  5.             define('_PHP_FILE_', rtrim($_SERVER['SCRIPT_NAME'], '/'));
  6.         }else {
  7.             define('_PHP_FILE_',    rtrim($_SERVER['SCRIPT_NAME'],'/'));
  8.         }
复制代码


就可以了
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org/
发表于 2018-8-20 10:34:44 | 显示全部楼层

非常感谢! 我试试。


非常感谢军哥! 我试试。

美国VPS、VPN、域名代购:http://shop63846532.taobao.com/

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|VPS侦探 ( 鲁ICP备16040043号-1 )

GMT+8, 2019-6-26 21:22 , Processed in 0.062500 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表