nginx与angular4

我有麻烦,我的configuration这里是我想如何工作mydomain.com – >redirect到正确的语言:mydomain.com/en/或mydomain.com/fr/

我有两个有i18n的angular度构build,每种语言一个。 与语言的redirect工作,但与angular2直接链接不:如果我去mydomain.com/fr/connect – > 404

这是我的nginxconfiguration

map $http_accept_language $lang { default en; ~*^fr fr; } server { listen 80; server_name domain.com www.domain.com; root /usr/share/nginx/html; index index.html index.htm; location = / { rewrite "^.$" /$lang/ break; } location = /$lang/ { try_files $uri $uri/ /index.html; } } 

如果你们中的一些人知道这一点,我只是卡在那里,我是一个nginx begginner:/

第二个位置块是错误的。 您可能需要将所有内容导向到index.html (资源文件除外)。 你可能会尝试这样的事情:

 map $http_accept_language $lang { default en; ~*^fr fr; } server { listen 80; server_name domain.com www.domain.com; root /usr/share/nginx/html; index index.html index.htm; location = / { return 302 /$lang/; } location / { try_files $uri $uri/ /index.html; } }