VPS侦探论坛

 找回密码
 注册
查看: 3379|回复: 2

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

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

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

本帖子中包含更多资源

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

x
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
发表于 2018-5-24 13:02:30 | 显示全部楼层


这个应该是程序上的问题,你可以自己看看源代码,源代码上输出的url就是不带index的
解决方法1: 修改php.ini 将里面的 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推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-12 07:47 , Processed in 0.026315 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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