如何进行基于子域的本地化?
www.example.com
==> 语言环境 = 默认本地 = en
ar.example.com
==> local = ar
经过网上研究,我不确定它应该是一个中间件
还是在routes
文件中。
最佳答案
我认为你可以这样做:
Route::group(['domain' => '{lang}.myapp.com'], function()
{
Route::get('/', function($lang)
{
App::setLocale($lang);
});
});
或者在 Controller 中使用App::setLocale
。
该组允许您使用通配符,ar.example.com
en.example.com
或 it.example.com
all会被集团捕获。在 de group 内,您可以定义所需的所有路由并传递 $lang
也许您可以添加一个中间件
来限制语言,也许是一个检查该语言是否存在的中间件
。
关于Laravel 5 基于子域的本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28858499/