0

我在路由文件时遇到问题。我需要访问其中的new_account子文件夹和控制器...

这是结构:

controllers
---new_account
---------step1.php
---------step2.php
---accounts.php 
---pages.php

这是我.htaccess位于外面的文件的内容application

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L] 

这是我的routes.php

$route['default_controller'] = 'pages/show_page/home';
$route['pages/(:any)'] = 'pages/show_page/$1';
$route['accounts'] = 'accounts';
$route['new_account/(:any)'] = "new_account";
$route['(:any)'] = 'pages/show_page/$1';
$route['404_override'] = '';

我也用$config['uri_protocol'] = 'REQUEST_URI';

我的pages控制器工作正常,即使是直接链接,例如<?php echo base_url(); ?>home重定向到../pages/home.php.

accounts.php控制器调用new_account/user_home.php包含指南和指向实际表单的链接。该链接是<?php base_url();>new_account/step1并且它不起作用应该有,因为$route['new_account/(:any)'] = "new_account";.

每当我单击指向 的链接时new_account/step1,我都会被重定向到主页。

我真的很想访问app_name/new_account/step1目录中的其他人...我错过了这些文件中的某些内容还是一个不可或缺的步骤?

笔记:

我还通过插入文件夹尝试了这个子文件夹路由扩展,但没有发生任何变化。然后我将其移入,但我得到的只是服务器错误。MY_Router.phpapplication/librariesapplication/core

4

1 回答 1

0

在你的评论这一行routes.php

$route['new_account/(:any)'] = "new_account";

Codeigniter 默认路由应该可以工作,因为您在文件夹中http://YOUR_SITE/new_account/step1有一个名为的控制器文件。还要检查你的控制器里面的类的名称是step1.phpnew_accountstep1.phpStep1

于 2013-01-28T08:41:41.827 回答