>  기사  >  PHP 프레임워크  >  tp5가 index.php에 액세스할 수 없으면 어떻게 해야 합니까?

tp5가 index.php에 액세스할 수 없으면 어떻게 해야 합니까?

藏色散人
藏色散人원래의
2021-06-16 10:02:294058검색

tp5不能访问index.php的解决办法:首先找到htaccess文件;然后修改规则内容为“RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]”即可。

tp5가 index.php에 액세스할 수 없으면 어떻게 해야 합니까?

本文操作环境:windows7系统、thinkphp v5.1版,DELL G3电脑

tp5不能访问index.php怎么办?

关于tp5.1框架定义路由无法访问的问题以及隐藏入口文件index.php

首先我使用了phpstudy 解析了一个域名 http://kymb.com/ 到 默认tp框架 public 目录下面 开始访问使正常的

 

 

 

 

 

然后看到route 文件下面有两个定义好的路由
Route::get('think', function () {
    return 'hello,ThinkPHP5!';
});
//
Route::get('hello/:name', 'index/hello');

然后我就直接以为是 http://kymb.com/think 就可以访问了 结果出现了
No input file specified. 文件没有找到
我就纳闷了 因为以前开发项目都是直接这样访问(可能由于惯性思维)
果断回去看了看文档 路由的定义解析
发现多次提示 需要带index.php 前缀访问 才可以的
然后把路径换成了 http://kymb.com/index.php/think 就可以了
其他路由设置也一样 都是需要带着index.php前缀(就是入口文件)

 

 

但是我又想了一下就是 我们还是希望 域名+模块/控制器/方法 这样访问 就比较美观吖
然后我查询了一篇资料 说把 访问规则重写一下就可以了
更改一下 .htaccess 文件

accc8b222b481b6a3bae338f95f68faf
  Options +FollowSymlinks -Multiviews
  RewriteEngine On

   RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  // 原本这一行注释掉
  #RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
  // 添加下面一下就可以了
  RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
2071f931c9870be1bebed0bdda8305e7

这个时候 那么我们想要的访问路径就实现了 这里方便记录一下 怕以后忘记了 一时之间不知道问题出现原来 回来有记录可寻

《相关推荐:最新的10个thinkphp视频教程

위 내용은 tp5가 index.php에 액세스할 수 없으면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.