当用户使用特定网址时,我正在尝试个性化特定路由。实际上,一个网站有两个域名。首先是法语,第二是荷兰语。因此,当用户使用第一个URL时,我希望照常显示/ public。但是,如果用户使用第二个URL,我想显示public / index.php / nl。但这是Symfony的(4+)路线。我为Nginx创建了两个配置文件。但是荷兰语配置向我显示/ public,而不向我显示/public/index.php/nl。我如何使用Nginx做到这一点。我希望它是不稳定的。
server {
listen 80;
server_name www.my-nl-site.be my-nl-site.be;
root /var/www/html/mysite/public;
index index.php/nl
location / {
# try to serve file directly, fallback to index.php
try_files $uri /index.php$is_args$args;
}
有人可以帮助我吗?
答案 0 :(得分:0)
我找到了Symfony的解决方案。我另外创建了一个控制器。
class AppController extends AbstractController
{
/**
* @Route("/", name="root")
*/
public function root(Request $request)
{
$request = Request::createFromGlobals();
$myhost = $request->server->get('HTTP_HOST');
if( $myhost == 'mywebsitenl.be'){
$locale = 'nl';
}else{
$locale = 'fr';
}
return $this->redirectToRoute('home', ['_locale' => $locale]);
}
}