Codeigniter重定向无法工作Ubuntu 18.04 LTS服务器



Codeigniter 3.0.3版和PHP 7.2版。我已经安装了Ubuntu 18.04服务器操作系统与mysql,php和apache2。当我在localhost中运行codeigniter项目时,它可以正常工作,但在服务器中不行。它加载登录页面,但不重定向到给定页面,只是在提供有效凭据时刷新登录页面。如果有人知道问题,请帮助解决。

在服务器中加载索引页时出错

<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message:  sizeof(): Parameter must be an array or an object that implements Countable</p>
<p>Filename: controllers/Login.php</p>
<p>Line Number: 57</p>

<p>Backtrace:</p>
<p style="margin-left:10px">
File: /var/www/html/sample/application/controllers/Login.php<br />
Line: 57<br />
Function: sizeof            </p>
<p style="margin-left:10px">
File: /var/www/html/sample/index.php<br />
Line: 292<br />
Function: require_once          </p>
</div>
{"status":true,"message":""}"

本地主机中不会出现此错误。

在此处输入图像描述

在我的情况下,我在终端中运行命令

sudo a2enmod重写

之后,我重新启动了Apache

systemctl重启apache2

在这两种情况下,您都需要管理员密码

这是一个警告,它也占用了您本地的空间,但可能您已经禁用了警告,或者您正在使用不同版本的PHP。由于您正在解析json,它将无法解析它,因为响应中混合了警告,所以它不是纯json格式。

sizeof采用一个数组或一个实现Countable的对象。您可以在检查变量是否为数组后使用此函数,方法如下:

is_array($dataVariable)?sizeof($dataVariable):0

如果变量不是数组,则返回零。您也可以在生产中禁用警告。

相关内容

  • 没有找到相关文章

最新更新