Home » Php » PHP Laravel Routing Issue

PHP Laravel Routing Issue

Posted by: admin July 12, 2020 Leave a comment

Questions:

My setup currently looks like this

application/controllers/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 works.

mydomain.com/index gives a laravel 404

mydomain.com/register gives a standard 404

What’s strange is that shouldn’t mydomain.com/register give me a laravel 404 error?
This page indicates that WAMP was the cause, but my setup is on a Ubuntu VM running PHP5, Apache2, and mySQL.

How to&Answers:

With mod_rewrite on, try setting in apache configurations “AllowOverride All”, it fixed it for me.

Answer:

As Akash suggests, make sure your mod_rewrite is enabled.
On Ubuntu use the following command to enable mod_rewrite on Apache:

sudo a2enmod rewrite

(You don’t have to edit httpd.conf)
Do not forget to restart apache.

You can use the PHP command

phpinfo();

to check if mod_rewrite is working.

Answer:

make sure mod_rewrite is turned on in Apache (httpd.conf)

Un-comment the following line

LoadModule rewrite_module modules/mod_rewrite.so

and restart httpd

Answer:

In addition, you should set your routes before you detect your controllers.

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

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

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