Пишу:
Route::pattern('locale', '(?:/|/en|/ru)');
Route::get('{locale}', 'MainController@index');
Route::get('{locale}/page', 'MainController@page');
потом в терминале:
php artisan route:cache
Во-первых сразу получаю ошибку от другого вообще левого модуля связанную с тем, что почему-то его ServiceProvider запускается повторно. Это странно поскольку у меня в регистрации выполняются команды, которые должны быть выполнены строго 1 раз и модуль бросает исключение, что повторно вызывать нельзя.
Пробовал переместить в boot() или в register() - всё равно, при artisan провайдер по какой-то причине вызывается дважды, несмотря на то, что перезапуск приложения не происходит. Проблема в общем-то исправляется костылём со статической bool переменной "isRegistered".
Как править?
Получаю следующее поведение:
1. /index - работает
2. /ru/index - работает
3. /en/index - работает
4. /ru/page - работает
5. /en/page - работает
6. /page - не работает
Какие-нибудь лайфхаки?