Support the ongoing development of Laravel.io →
Configuration Requests Installation

Hello, i recently started to use laravel and can't figure out how to solve this route

      Route::get('/', 'HomePageController@index');
      Route::get('/{lang}', 'HomePageController@index');
      Route::get('/{lang}/{all}', 'HomePageController@index');
      Route::get('/{lang}/{all}/{all2}/', 'HomePageController@index');
      Route::get('/{lang}/{all}/{all2}/{all3}/', 'HomePageController@index');
      Route::get('/{lang}/{all}/{all2}/{all3}/{all4}/', 'HomePageController@index');

Into something like this

      Route::get('/', 'HomePageController@index');
      Route::get('/*', 'HomePageController@index');

And second question, how do i insert language into already existing segments in request. Like:

mysite.com/homepage => mysite.com/en/homepage

My "before" middleware already set up to check language.

 public function handle($request, Closure $next)
{
    $locale = $request->segment(1);

    if ( ! array_key_exists($locale, $this->app->config->get('app.locales'))) {
        $segments = $request->segments();
        $segments[0] = $this->app->config->get('app.fallback_locale');
        /* insert here, if number of segments >1 */

        return redirect($segments[0]);
    }

    $this->app->setLocale($locale);

    return $next($request);
}
Last updated 3 years ago.
0

Solved first question with this

Route::get('/{any}', 'HomePageController@index')->where('any', '(.*)');

0

Sign in to participate in this thread!

PHPverse

Your banner here too?

Moderators

We'd like to thank these amazing companies for supporting us

Your logo here?

Laravel.io

The Laravel portal for problem solving, knowledge sharing and community building.

© 2025 Laravel.io - All rights reserved.