4

我有一个 application/controller/login.php 文件,其中包含以下内容

class Login extends Controller {

  function Login()
  {
    parent::Controller();  
  }

  function index()
  {
    $this->mysmarty->assign('title', 'Login');
    $this->mysmarty->assign('site_media', $this->config->item('site_media'));
    $this->mysmarty->display('smarty.tpl');
  }
}

我的路线定义如下所示:

$route['default_controller'] = "welcome";
$route['login'] = 'login';
$route['scaffolding_trigger'] = "";

问题是当我尝试访问http://localhost/myapp/login时,我不断收到 404 。我做错什么了?我检查了 CI 路由文档,但找不到任何东西。

4

3 回答 3

7

这应该没有什么问题 - 没有路线它可以工作吗?另外,您是否正确设置了 .htaccess(即http://localhost/myapp/index.php/login是否可以正常工作)

于 2009-04-03T23:39:11.460 回答
2

要记住的另一点是,如果您将“enable_query_strings”设置为 true 并且未使用 .htaccess mod_rewrite 规则:

在 config/config.php 中:

$config['enable_query_strings'] = TRUE;
$config['controller_trigger']   = 'c';
$config['function_trigger']     = 'm';
$config['directory_trigger']    = 'd';

正确路由您的请求的 URL 如下所示:

http://localhost/myapp/index.php?c=login
于 2009-05-01T18:11:40.737 回答
0

如果您没有index.php使用该.htaccess文件从您的应用程序中删除您的应用程序,那么这本身就是另一个球类游戏。但是你可以做的是:

设置controller不是welcome文件的默认值,如果您希望欢迎文件成为默认值,请以这种方式使用链接

http://localhost/myapp/index.php/login

请记住,这种方式仅在index.php未使用.htaccess文件删除文件时有效。

同时打开apllication/config/config.php并使用此代码baseurl

$config['base_url'] = 'http://localhost/myapp';

那应该总能解决问题。

于 2017-04-04T10:27:52.693 回答