Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Codeigniter默认控制器在主索引页上工作,但不在主控制器内的页上工作_Php_Codeigniter - Fatal编程技术网

Php Codeigniter默认控制器在主索引页上工作,但不在主控制器内的页上工作

Php Codeigniter默认控制器在主索引页上工作,但不在主控制器内的页上工作,php,codeigniter,Php,Codeigniter,如何为主控制器中的每个页面配置路由 Codeigniter默认控制器仅在Main索引页上工作,但不在events上工作,该页位于Main控制器内。(见下文) 我想要http://example.com/main/events将成为http://example.com/events 此链接会将您带到主控制器的索引页,就像它应该: http://example.com/ Main控制器的此事件页面将带您进入404错误页面: http://example.com/events events页面仅

如何为
主控制器中的每个页面配置路由

Codeigniter默认控制器仅在
Main
索引页上工作,但不在
events
上工作,该页位于
Main
控制器内。(见下文)

我想要
http://example.com/main/events
将成为
http://example.com/events


此链接会将您带到
控制器的索引页,就像它应该:

http://example.com/
Main
控制器的此事件页面将带您进入404错误页面:

http://example.com/events
events
页面仅适用于URL中的默认控制器,如下所示:

http://example.com/main/events
my routes.php文件的内容:

$route['default_controller'] = 'Main';
$route['404_override'] = 'main/error404';
$route['translate_uri_dashes'] = FALSE;
.htaccess文件的内容:

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

试试这个。当您的URL设置为
http://example.com/events

$route['default_controller'] = 'Main';
$route['events'] = 'main/events';
$route['404_override'] = 'main/error404';
$route['translate_uri_dashes'] = FALSE;

试试这个。当您的URL设置为
http://example.com/events

$route['default_controller'] = 'Main';
$route['events'] = 'main/events';
$route['404_override'] = 'main/error404';
$route['translate_uri_dashes'] = FALSE;

这就是codeigniter中路由器的工作方式。您可以:

  • 函数events(){…}
    函数中的逻辑移动到它自己的
    类events extends
    CI_控制器{}`Controller的索引函数中

  • 在配置文件中设置自定义路由到
    Main
    控制器中的方法,如下所示:(您可以使用
    (:any)
    以及其他参数):


  • 这就是codeigniter中路由器的工作方式。您可以:

  • 函数events(){…}
    函数中的逻辑移动到它自己的
    类events extends
    CI_控制器{}`Controller的索引函数中

  • 在配置文件中设置自定义路由到
    Main
    控制器中的方法,如下所示:(您可以使用
    (:any)
    以及其他参数):


  • application/config/routes.php中

    $route['events'] = 'main/events';  # www.example.com/events
    $route['newPath'] = 'controller/exactPath'; # www.example.com/newPath
    

    .htaccess
    中(应用程序文件夹外部)


    application/config/routes.php中

    $route['events'] = 'main/events';  # www.example.com/events
    $route['newPath'] = 'controller/exactPath'; # www.example.com/newPath
    

    .htaccess
    中(应用程序文件夹外部)


    这应该是答案这应该是答案