laravel слишком много ошибок перенаправления

#php #laravel

#php #laravel

Вопрос:

Вот мой файл маршрутов:

 Route::get('/', 'WebController@index');
Route::group(['prefix' => 'cn'], function () {
    Route::get('/', 'WebController@index');
    Route::group(['namespace' => 'ACL', 'prefix' => 'auth'], function () {
        Route::get('login', 'AuthController@login');
        Route::post('login', 'AuthController@login');
        Route::get('logout', 'AuthController@logout');
    });
    Route::group(['middleware' => ['auth', 'token']], function () {
        Route::get("/intentional", 'IntentionalOrderController@index');
        Route::get("/intentional/add", 'IntentionalOrderController@create');
        Route::post("/intentional/add", 'IntentionalOrderController@store');
        Route::get("/intentional/selfOrder", 'IntentionalOrderController@selfOrder');
        Route::post("/intentional/selfOrder", 'IntentionalOrderController@storeSelfOrder');
    });
});
Route::group(['prefix' => 'en'], function () {
    Route::get('/', 'WebController@index');
    Route::group(['namespace' => 'ACL', 'prefix' => 'auth'], function () {
        Route::get('login', 'AuthController@login');
        Route::post('login', 'AuthController@login');
        Route::get('logout', 'AuthController@logout');
    });
    Route::group(['middleware' => ['auth', 'token']], function () {
        Route::get("/intentional", 'IntentionalOrderController@index');
        Route::get("/intentional/add", 'IntentionalOrderController@create');
        Route::post("/intentional/add", 'IntentionalOrderController@store');
        Route::get("/intentional/selfOrder", 'IntentionalOrderController@selfOrder');
        Route::post("/intentional/selfOrder", 'IntentionalOrderController@storeSelfOrder');
    });
});
  

Проблема в том:

Когда я ввожу URL /en или / cn, браузер выдает слишком много перенаправлений; но когда я ввожу / en / auth / login или любой другой URL, он будет работать просто отлично.

Хотя я могу исправить это, переименовав /cn в / cn / index, но все же я не понимаю, почему это не работает.

PS: 1. Моя версия laravel 5.1 2. Среда отладки — wamp 3. Браузер — chrome


Обновить:

вот мой WebController и BaseController

 <?php namespace AppHttpControllers;

class WebController extends BaseController
{
    public function index()
    {
        return view(config('app.locale') . ".web.index", ["title" => trans('common.smart_fabric'), "active" => "0"]);
    }
}
  

 <?php namespace AppHttpControllers;

use IlluminateSupportFacadesApp;
use IlluminateSupportFacadesRequest;

class BaseController extends Controller
{
    public function __construct()
    {
        $locale = Request::segment(1);
        if ($locale) {
            switch ($locale) {
                case 'cn':
                    App::setLocale('cn');
                    break;
                case 'en':
                    App::setLocale('en');
                    break;
                default:
                    App::setLocale('cn');
            }
        }
}
  

Комментарии:

1. Можете ли вы поделиться своей WebController@index функцией?

2. В WebController@index вы должны передавать параметр locale или что-то в этом роде

3. Выше мой контроллер. Как вы можете видеть, я хочу отобразить другой вид в соответствии с URL.