哎呀!我们似乎遇到了障碍。请稍后再试。
Codeigniter 4 在我运行 CI4 应用程序时显示错误,我该如何解决?
变化:
public $baseURL = 'http://ci.local';
public $baseURL = 'http://localhost:8080';
public $indexPage = '';
哎呀!我们似乎遇到了障碍。请稍后再试。
Codeigniter 4 在我运行 CI4 应用程序时显示错误,我该如何解决?
变化:
public $baseURL = 'http://ci.local';
public $baseURL = 'http://localhost:8080';
public $indexPage = '';
这项工作对我来说试试吧 转到 app 目录,然后进入启动目录,您将看到 production.php 文件。
那是:
app => Config => Boot => production.php
将 更改ini_set('display_errors', '0')
为ini_set('display_errors', '1')
。
警告:在生产中更改回初始状态时ini_set('display_errors', '0')
或者
您可以将env
项目目录中的文件重命名为.env
,然后打开并编辑。搜索# CI_ENVIRONMENT = production
删除#
并更改production
为development
警告:在生产中更改回初始CI_ENVIRONMENT = development
到CI_ENVIRONMENT = production
对于那些遇到 intl 错误的人,请转到您的 php 安装目录编辑 php.ini 文件的位置,semi-colon
";"
从中删除。保存文件并重新启动服务器。我认为这将解决该错误。我的 php.ini 的这个特殊编辑是在 php 7.2 - 8.1 上,所以我没有检查比 Codeigniter 4 不支持的这些版本更小的 php 版本;extension=intl
extension=intl
假设您的 CI4 项目的根文件夹是rootproject
. 编辑rootproject/.env
文件。在第 17 行更改为:
# CI_ENVIRONMENT = production
至:
CI_ENVIRONMENT = development
保存。
刷新指向 CI4 项目的浏览器。它应该给你很多错误信息。
如果有东西写成CacheException
,那么你的缓存文件夹是不可写的。使其可写;
Ubuntu:
chown -Rv www-data rootproject/writable
中央操作系统:
chown -Rv apache rootproject/writable
简单的方法:
chmod 777 -Rv rootproject/writable
在您的 CI4 项目根目录中,创建一个名为.env
. 它应该与系统、应用程序等在同一目录中
然后,添加这个CI_ENVIRONMENT = development
问题很可能是由于缺少扩展。在此处检查服务器要求。. 检查您的 php.ini 文件并确保已启用intl和mbstring 。
在根文件夹更改:env到.env
更改# CI_ENVIRONMENT = production
为CI_ENVIRONMENT = development
(确保未注释)
您的错误可能与knit.php文件有关。
转到系统/第三方并将:knit.php更改为Knit.php(大写)
重新加载。
您在生产环境中运行,需要将其更改为开发或测试环境才能在浏览器中查看错误消息。
有几种方法可以做到这一点,但添加:
SetEnv CI_ENVIRONMENT development
Apache httpd.config 文件对我有用。
_t
我得到了这个查询的答案;只需按照以下步骤操作:
从命令行,在你的项目根目录中点击这个
php spark serve
然后在浏览器上点击http://localhost:8080/
享受您的最新 CI。
我有同样的问题,我有一个简单的 Mac 解决方案。- 在项目文件夹中,转到“可写” - 选择包含的所有文件夹并单击“获取信息” - 转到共享和权限 - 在“每个人”中选择“读写”就是这样!刷新页面
对于在 MacOS 中使用 XAMPP 的用户:
您不需要更改可写目录的所有权。您只需要更改整个目录的权限:
chmod -R 777 writable
不确定所需的答案是什么,但是:
在任何情况下,显示的错误(更改环境后)或日志文件的副本都会很有用。
尝试这个
打开 [xampp]/php/php.ini
搜索;extension=intl并删除;
保存 php.ini 文件并重新启动 Apache(服务器)。
当您将 # CI_ENVIRONMENT = production 更改为 CI_ENVIRONMENT = development 时,不要忘记将 env 文件重命名为 .env ,否则它将不起作用。
您可以检查可写日志文件/日志查找错误信息,如果您的日志信息如下:
CRITICAL - 2020-04-19 17:44:55 --> Invalid file: template/header.php
#0 F:\xampp\htdocs\ppdb\vendor\codeigniter4\framework\system\View\View.php(224): CodeIgniter\Exceptions\FrameworkException::forInvalidFile('template/header...')
去修复你的错误,在我的情况下,我在控制器文件上输入了错误的名称