首页 文章

CodeIgniter重定向不在真正的服务器上工作

提问于
浏览
0

我遇到了CI 2.1.3重定向功能的问题 .

每当我调用重定向时,它都会显示一个白色空白页面 . 事实上,它在我的本地主机上运行良好,问题恰好发生在我的真实服务器上(安装了CentOS 5) .

这就是我称之为重定向的方式:

redirect('frontend/article/index');

or

redirect(base_url('articles.html'));

我在config / routes.php中添加了一个路由

$route['articles.html'] = 'frontend/article/index';

with:frontend是模块,article是控制器,index是action(我正在使用wiredesignz's HMVC module扩展名)

我该怎么办呢?那问题是什么?

提前致谢!

UPDATE

我通过调用来替换CI重定向函数:

Headers (“位置:http://example.com”);

但它也没有用 .

所以我创建了一个名为info.php的文件并将其上传到我的服务器 . 这是内容:

<?php
phpinfo();
?>

当我输入地址栏时:http://example.com/info.php,它显示在图像中 .

enter image description here

为什么会出现“>”字符?这是导致重定向不起作用的问题吗?

2 回答

  • 1

    首先,确保启用错误报告,或尝试将以下内容放在index.php的顶部 .

    error_reporting(E_ALL | E_WARNING | E_NOTICE);
    ini_set('display_errors', TRUE);
    

    如果在调用redirect()方法之前没有输出 echoprint_rprintdump 等 .

    迁移到新环境时的另一个常见原因是空白区域 . 检查您的文件底部是否有任何空格 .

  • 2

    如果你在config.php中定义.html作为文件ext . 你不需要用它来修改路线 .

    $route['articles'] //instead of $route['articles.html']
    

    您还需要从不需要的重定向cos中删除base_url() .

    redirect('articles'); //should sort it
    

    希望这能解决你的问题 .

    编辑

    如果在尝试这些更改后仍然无法正常工作,则很可能是控制器中的问题 . 如果是这种情况,您可能需要在index.php文件中打开错误报告,以准确找出问题发生的位置 .

相关问题