我遇到了CI 2.1.3重定向功能的问题。
每当我调用重定向时,它都会显示一个白色空白页面。事实上,它在我的localhost上运行良好,问题就发生在我的真实服务器上(安装了CentOS 5)。
这就是我调用重定向的方式:
redirect('frontend/article/index');
or
redirect(base_url('articles.html'));
我在config / routes.php中添加了一个路由
$route['articles.html'] = 'frontend/article/index';
with:frontend是module,article是controller,index是action(我正在使用wiredesignz's HMVC module扩展名)
我该如何解决?这有什么问题?
提前致谢!
更新
我通过调用
替换了CI重定向功能标题(“位置:http://example.com”);
但它也没有用。
所以我创建了一个名为info.php的文件并将其上传到我的服务器。这是内容:
<?php
phpinfo();
?>
当我在地址栏中输入http://example.com/info.php时,它会在图片中显示。
为什么会有“&gt;”字符?这是导致重定向不起作用的问题吗?
答案 0 :(得分:2)
首先,确保启用错误报告,或尝试将以下内容放在index.php的顶部。
error_reporting(E_ALL | E_WARNING | E_NOTICE);
ini_set('display_errors', TRUE);
如果这不能指向正确的方向,请确保在您的输出之前没有输出echo
,print_r
,print
,dump
等调用redirect()方法。
迁移到新环境时的另一个常见原因是空白区域。检查您的文件底部是否有任何空格。
答案 1 :(得分:1)
如果你在config.php中将.html定义为文件ext。你不需要用它来修改路线。
$route['articles'] //instead of $route['articles.html']
此外,您还需要从不需要的重定向cos中删除base_url()。
redirect('articles'); //should sort it
希望这能解决你的问题。
如果在尝试进行这些更改后仍然无法正常工作,则很可能是控制器中的问题。如果是这种情况,您可能需要在index.php文件中打开错误报告,以确切了解问题发生的位置。