繁体   English   中英

PHP Laravel路由问题

[英]PHP Laravel Routing Issue

我的设置目前看起来像这样

应用程序/控制器/register.php

class register_Controller extends Base_Controller
{
    public $restful = true;
    public function get_index()
    {
        return View::make('main.register');;
    }
}

routes.php

Route::controller(Controller::detect());
Route::any('/', function()
{
    return View::make('main.index');
});
Route::any('register',function()
{
    return View::make('register.index');
});

mydomain.com有效。

mydomain.com/index提供了一个laravel 404

mydomain.com/register给出了标准的404

奇怪的是mydomain.com/register不应该给我laravel 404错误吗? 页面表明是WAMP引起的,但我的设置是在运行PHP5,Apache2和mySQL的Ubuntu VM上进行的。

启用mod_rewrite后,尝试在apache配置中设置“ AllowOverride All”,它为我修复了该问题。

如Akash所建议,请确保已启用mod_rewrite。 在Ubuntu上,使用以下命令在Apache上启用mod_rewrite:

sudo a2enmod rewrite

(您不必编辑httpd.conf)
不要忘记重启apache。

您可以使用PHP命令

phpinfo();

检查mod_rewrite是否正常工作。

确保在Apache(httpd.conf)中打开了mod_rewrite

取消注释以下行

LoadModule rewrite_module modules/mod_rewrite.so

并重新启动httpd

另外,您应该在检测控制器之前设置路由。

Route::any('/', function()
{
    return View::make('main.index');
});

Route::any('register',function()
{
    return View::make('register.index');
});

Route::controller(Controller::detect());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM