dsfs504545 2013-04-01 18:47
浏览 46
已采纳

FuelPHP routes.php不能正常工作

I have a very basic setup with a new Fuel checkout.

fuel/app/classes/controllers/auth.php

class Controller_Auth extends Controller
{
    public function action_login()
    {
        return View::forge('auth/login');
    }
}

fuel/app/views/auth/login.php

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>FuelPHP Framework</title>
    <?php echo Asset::css('bootstrap.css'); ?>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="assets/css/bootstrap-responsive.css" rel="stylesheet">
    <style>
        #login-block {
            margin: auto;
            border: 1px solid #ddd;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px;
            border-radius: 4px;
            -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
            -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
            padding: 5px;
        }
    </style>
</head>
<body>
    <div id="content" class="container-fluid">
        <div id="login-block">
            <h1>Login</h1>
        </div>
    </div>
    <?php echo Asset::js('jquery.min.js'); ?>
    <?php echo Asset::js('bootstrap.js'); ?>
</body>
</html>

fuel/app/config/routes.php

return array(
    '_root_'        => 'settings/index',  // The default route
    '_404_'         => '404',    // The main 404 route
    'login'         => 'auth/login',
);

However, visiting http://localhost/tmp/public/login gives a 404. What am I missing?

  • 写回答

1条回答 默认 最新

  • doushi9856 2013-04-01 22:43
    关注

    Assuming that you run Apache, your problem may reside on a misconfigured .htaccess file.

    From the URL you're trying to access, a configuration like the following should suffice:

    <IfModule mod_rewrite.c>
        RewriteEngine on
    
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
    
        RewriteRule ^(.*)$ index.php/$1 [L]
    </IfModule>
    

    The .htaccess I'm reffering to is the one on the same directory as the index.php, and normaly defaults to: /fuel/public/.htaccess

    If the above doesn't work, you may see a notice on the file that says:

    # NOTICE: If you get a 404 play with combinations of the following commented out lines

    Try to fiddle with it, until you get it right.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值