phpstudy配置运行CI4框架

背景
因公司老项目使用CI框架,想学习一下,于是官网下载CI4框架后,像往常一样在phpstudy中创建网站,路径指向CI框架的目录,但是并没有成功展示CI框架的页面。

CI框架目录
错误:因为phpstudy默认访问的是php项目根目录的index.php文件,但是发现根目录下并无此文件,于是复制public对外根目录下的 .htaccess 和 index.php 文件到根目录,打开网站,网页报错

Warning: require ... : failed to open stream: No such file or directory in ...
Fatal error: require(): Failed opening required ... in ...
步骤1:更改了根目录下index.php文件中为

$pathsConfig = FCPATH . 'app/Config/Paths.php'; // 去除 app 前面的 ../
配置环境
错误:再次打开网站,页码依旧报错



 步骤1:查看CI官网,需要将根目录下的env文件修改为.env 

 CI_ENVIRONMENT = development // 将前面的 # 去掉,production 修改为 development
步骤2:打开 app -> Config -> Boot -> production.php

ini_set('display_errors', '0'); 将 0 改为 1
官网的解释:

默认情况下,CodeIgniter 以生产模式启动。这是一项安全措施,可防止你的网站在上线后马上被攻击,从而使网站更加安全。所以首先让我们先修改一下这部分内容。将 env 文件复制或重命名为 .env,并打开它。
 
该文件包含服务器特定的设置。这意味着你无需将任何敏感信息提交到代码库中。它包括一些常用的公共配置项,尽管它们都已被注释掉。因此,取消注释 CI_ENVIRONMENT 所在的代码行,然后将 production 更改为 development:
 
CI_ENVIRONMENT = development
最终解决
错误:再次打开网站,还是出现报错的页面



很明显提示的是缺少必要的php扩展intl 

步骤1:打开你php版本所在目录,打开php.ini文件,搜索extension=intl

;extension=intl 改成 extension=intl // 去除前面的';'号
官网的解释:

在使用 CodeIgniter 4 之前,请确保你的服务器满足 要求,尤其是所需的 PHP 版本和 PHP 扩展。例如,你可能会发现必须取消注释 php.ini 的 “extension” 部分才能启用 “curl” 和 “intl”。
重启 Apache,成功打开CI4框架默认页面。



 总结
其实按照CI官网的教程一步步来是可以解决大部分问题的,只是一些你自己所用的环境有些差异需要进行不同的配置,像我用的环境phpstudy,有些用wampserver等等...但本质都是大同小异的。(我是初学php的小白,还有很多我不明白的,比如intl这个扩展是什么作用?pathsConfig的作用是配置什么的?env文件为何需要改不同的配置解决报错?等等...)

废话不说,解决步骤全部重新直观的整理一下。

1. 复制 public 目录下 .htaccess 和 index.php 到项目根目录,修改 index.php 文件中此处代码为 

$pathsConfig = FCPATH . 'app/Config/Paths.php';
2. 将env文件前面加一个'.'改为.env文件,并修改此文件环境

 CI_ENVIRONMENT = development // 记得去掉前面 # 的注释
3. 打开 app -> Config -> Boot -> production.php 文件,修改代码如下

ini_set('display_errors', '1'); // 0 换成 1
4. 打开php.ini文件,修改配置如下

 


相关问题

餐厅介绍

自助餐厅

4.7分
537m | 中航城区冷死你境内呢名
停车 WiFi
  • 热情1
  • 环境好11
  • 服务好12
  • 好极了31
  • 服务热情14

暂时没有看法.. 发表看法请遵守当地法律和制度 (网友评论仅供其表达个人看法,并不表明本站立场。)