我安装了 Codeigniter 4.0.2 并做了以下更改:
1-CI_ENVIRONMENT = development
在 .env 文件中
2-SetEnv CI_ENVIRONMENT development
在公用文件夹中的.htaccess
3-$useKint = true;
在公共文件夹的主 index.php 文件中添加
当我在 localhost 打开时,会呈现欢迎页面,但不会呈现调试工具栏。我错过了什么吗?
我安装了 Codeigniter 4.0.2 并做了以下更改:
1-CI_ENVIRONMENT = development
在 .env 文件中
2-SetEnv CI_ENVIRONMENT development
在公用文件夹中的.htaccess
3-$useKint = true;
在公共文件夹的主 index.php 文件中添加
当我在 localhost 打开时,会呈现欢迎页面,但不会呈现调试工具栏。我错过了什么吗?
这为我修复了它:
# CI_ENVIRONMENT = production
并将值更改为development
app.baseURL
为您应用的基本 URL(这似乎是您错过的步骤)我也遇到了这个问题3天。今天我通过将 /writable/debugbar/ 设置为 777 来解决这个问题(仅用于开发)
chmod -R 777 [yourappname]/writable/debugbar/
希望这可以为您和每个人提供解决方案
以下是您可以通过全新 CI4 安装检查的一些内容:
确保您defined('CI_DEBUG') || define('CI_DEBUG', 1);
的app/Config/Boot/development.php文件中有
尝试使用命令行启动您的应用程序,php spark serve
以便您可以获取有关您的应用程序访问工具栏的一些信息。
确保您有一个名为$globals
app/Config/Filters.php 的变量,其中 'toolbar' 作为 'after' 键的值,并且 'toolbar' 与工具栏类正确映射到$aliases
public $aliases = [
'csrf' => \CodeIgniter\Filters\CSRF::class,
'toolbar' => \CodeIgniter\Filters\DebugToolbar::class,
'honeypot' => \CodeIgniter\Filters\Honeypot::class
];
public $globals = [
'before' => [
//'honeypot'
// 'csrf',
],
'after' => [
'toolbar',
//'honeypot'
],
];
它可以是一些起点,希望这会有所帮助。
如果您不使用 PHP 的内置服务器,请正确设置基本 url
应用程序/配置/App.php
public $baseURL = 'http://localhost/path_to_CI/public';
正如文档所说,您需要“php spark serve”,因为调试栏会在 spark 设置中查找 localhost:8080。
在您的 env 文件中必须使用公共文件夹修改 baseurl
app.baseURL = 'http://localhost/your-app/public'
今天我在第一次尝试使用 CI4(使用 XAMPP)时遇到了同样的问题......我对 CI4 框架所做的唯一更改是将 env 文件重命名为 .env 然后我设置 CI_ENVIRONMENT = .env 文件中的开发
我找到了 2 个解决方案:
使用“php spark serve”命令来启动我的项目而不是 XAMPP
将 app\Config\App.php 中的 $baseURL 指向我项目的公共文件夹
希望这可以帮助!此致
确保使用 HTTP 协议而不是 HTTP S。
在.env
文件中检查app.baseURL = 'http://localhost/'
而不是 app.baseURL = 'https://localhost'
.
然后,在浏览器上使用http://
而不是https://
.
就我而言,问题出在 app.baseURL 中,我确实将我的项目放在了 compbase 的位置
-- app.baseURL = 'http://compbase'
我把它改成了
-- app.baseURL = 'http://compbase.test'
当你使用 laragon
只需添加以下几行app/config/filters.php
,它的工作就像一个魅力
public $collectors = [
\CodeIgniter\Debug\Toolbar\Collectors\Timers::class,
\CodeIgniter\Debug\Toolbar\Collectors\Database::class,
\CodeIgniter\Debug\Toolbar\Collectors\Logs::class,
\CodeIgniter\Debug\Toolbar\Collectors\Views::class,
\CodeIgniter\Debug\Toolbar\Collectors\Cache::class,
\CodeIgniter\Debug\Toolbar\Collectors\Files::class,
\CodeIgniter\Debug\Toolbar\Collectors\Routes::class,
\CodeIgniter\Debug\Toolbar\Collectors\Events::class,
];
无需按照文档执行任何其他操作
检查您的代码App\Config\Filtes.php
。
使用这行代码:
public $aliases = [
'csrf' => CSRF::class,
'toolbar' => DebugToolbar::class,
'honeypot' => Honeypot::class,
];
而不是这个:
public $aliases = [
'csrf' => CodeIgniter\Filters\CSRF::class,
'toolbar' => CodeIgniter\Filters\DebugToolbar::class,
'honeypot' => CodeIgniter\Filters\Honeypot::class,
];
我在安装 ci 4.1.5 时遇到了同样的问题,并通过这种方式解决了:
使用户 .env 文件存在于项目根文件夹中。
在项目根文件夹中重命名env to .env
或创建。.env
.env
在文件中设置开发环境
CI_ENVIRONMENT=development
.env
在文件中设置基本 url
app.baseURL = 'http://localhost/project-root/public/'