首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Codeigniter 4的web服务器上的空白页面

使用Codeigniter 4的web服务器上的空白页面
EN

Stack Overflow用户
提问于 2020-10-14 21:35:17
回答 2查看 321关注 0票数 1

我将项目上传到web服务器,按照安全建议,将CodeIgniter 4文件放在服务器的非公共目录中:/home/user/codeigniter

在公共目录中:/home/user/public_html

这是我的路径:$pathsPath = FCPATH. '../codeigniter/app/Config/Paths.php';

我正确地放置了所有的文件,就像;

代码语言:javascript
复制
|__ public_html (or your domain root folder)
| |assets
| |index.php
| |.htaccess
|
|__ codeigniter
|__ app
|__ system
|__ writable
|__ .env

但我总是收到一张空白页。你能帮我处理这个问题吗?

error.log是:

代码语言:javascript
复制
RITICAL - 2020-10-14 06:12:09 --> ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
#0 [internal function]: CodeIgniter\Debug\Exceptions->errorHandler(2, 'ini_set(): Head...', '/home/catideko/...', 101, Array)
EN

回答 2

Stack Overflow用户

发布于 2020-10-15 18:37:19

我已经解决了这个问题。问题的根源是关于我的主机中的"zlib_output_compression“。它应该是“关”的位置。在cpanel上,将位置更改为"off“后,一切正常。

票数 1
EN

Stack Overflow用户

发布于 2020-10-15 17:17:49

这是错误的,您不能像那样同时使用FCPATH..,您必须提供完整路径,如$pathsPath = '/home/user/codeigniter/app/Config/Paths.php';

还要确保php可以访问路径/home/user/codeigniter,要么需要在php.ini中包含该路径,要么在index.php中设置该路径。

代码语言:javascript
复制
set_include_path(get_include_path() . PATH_SEPARATOR . '/home/user/codeigniter');

然后确认您的路径是否包含在内

代码语言:javascript
复制
echo get_include_path();

然后通过执行official guidelines确认是否已正确更新了所有路径

完成所有设置后,请确保您的可写文件夹设置了写入权限。并且您的App.php包括

代码语言:javascript
复制
public $sessionSavePath          = WRITEPATH . 'session';

虽然上面的设置可以工作,但我建议您坚持使用默认的composer安装和路径

代码语言:javascript
复制
composer create-project codeigniter4/appstarter project-root

这将确保CI4升级时的无缝更新,以使您的应用程序更安全限制访问您的可写文件夹,如nginx/apache,您可以限制哪些类型的文件可以从这些文件夹中打开。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64354509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档