我有一个多语言网站,有两种语言:英语和法语,当用户将语言更改为 en 时,我想将 /fr/messages/111
更改为 /messages/111
code> 为英语语言。我使用 changeLang.php
页面来更改传递语言的语言(fr 或 en)
我尝试了一些方法,但有时会导致重定向循环,是否有一种方法或简单的方法可以根据语言更改 url
最佳答案
不要为每种语言设置单独的 URL,而是考虑让相同的 URL 根据用户的偏好返回英语或法语文本。浏览器发送一个名为 Accept-Language
的 HTTP header ,它告诉您用户的首选语言,您的应用程序可以使用它来决定在其响应中发送哪些文本。
这样做的优点是它从一开始就自动工作。用户无需在您的网站上执行任何操作即可选择语言,因为用户的浏览器应配置为默认请求正确的语言(基于操作系统区域设置)。
关于php - 语言改变时如何修改url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22425775/