gpt4 book ai didi

php - Codeigniter 中的路由 - 找不到 404 页面

转载 作者:可可西里 更新时间:2023-10-31 22:55:44 24 4
gpt4 key购买 nike

谁能告诉我,问题出在哪里??

这是我的 Controller

class Support extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('support_model');
$urlarray = array("index","delete");
if(!in_array($this->uri->segment(2),$urlarray)){
$this->viewticket($this->uri->segment(2));
}
}

public function viewticket($id){
if(!empty($id)){
$this->load->view('templates/logged_header');
$this->load->view('support/view');
$this->load->view('templates/footer');
}
}
}

这是我的 routes.php

$route['default_controller'] = "welcome";
$route['benefits'] = 'welcome/benefits';
$route['faqs'] = 'welcome/faqs';
$route['distributors'] = 'welcome/distributors';
$route['contact'] = 'welcome/contact';
$route['purchase'] = 'welcome/purchase';

//login routes
$route['login'] = 'login/index';
$route['logout'] = 'login/logout';

$route['404_override'] = '';

localhost/ciproj/support/hello-world给我404 Page Not Found错误

如果我使用 exit;$this->load->view('templates/footer'); 之后,页面显示空白页。

我在与支持相关的 route 没有任何东西,其他所有方法都有效我在 route 遗漏了什么吗??

感谢您的帮助。

最佳答案

判断标题,首先检查你的服务器是否使用 CGI/FastCGI 运行 PHP(你可以简单地通过 phpinfo() 来检查)。

如果是这样,请在 config.php 中更改以下内容:

$config['uri_protocol'] = "REQUEST_URI";

回到主题,您可以通过在 routes.php 文件中使用下面的单行路由来实现:

$route['support/(?!index)(?!delete)(:any)'] = "support/viewticket/$1";

并从您的 __construct 方法中删除这些行:

$urlarray = array("index","delete");
if(!in_array($this->uri->segment(2),$urlarray)){
$this->viewticket($this->uri->segment(2));
}

告诉我它是如何工作的。

关于php - Codeigniter 中的路由 - 找不到 404 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18166496/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com