在所有路径内部添加文化前缀?

在所有路径内部添加文化前缀?

国际化用户可见的 URL(全部位于一台服务器上):

http://example.us/example/path
http://example.de/beispiel/pfad

URL 路径应该翻译内部至(以便进一步处理mod_rewrite):

/en_US/example/path
/de_DE/beispiel/pfad

添加文化前缀的好方法是什么一次到一条路径?

答案1

有什么好方法可以向路径中添加一次文化前缀?

答案是:根本不是。如果你不想让你的用户知道您的结构是这样的,那么就不要向他们展示。这意味着,当您收到 的请求时.com.br,您会在内部检查HTTP_HOST,并分配一个多变的到您的脚本,然后可以根据语言执行。

说实话,我认为mod_rewrite这是浪费时间。如果您的网站是用任何一种还不错的脚本语言编写的,您可以让脚本HTTP_HOST在数据库中查找与某种语言匹配的,然后从那里继续。mod_rewrite(因此大多数.htaccess指令)实际上并不能动态扩展:如果他们访问.com您网站的版本时,您想查找他们的 IP 并根据他们的大致位置将他们重定向到最合适的后缀,该怎么办?仅使用 ,您将很难做到这一点mod_rewrite

相关内容