Apache 重写 - 语言

Apache 重写 - 语言

我在重写时遇到了一些问题...有人可以帮我吗?

目前我有这个:

Redirect example.com/*/ to example.com/en/* if da,de, and en were not found.

RewriteCond %{REQUEST_URI} !^.*/(da|de|en|en-uk)/.*$
RewriteRule ^(.*)$ /en/$1 [L,R]

这不是问题 - 问题出在以下方面:1. example.com/xx/* -> example.com/en/* - 对于不属于 (da,de,en|en-uk) 的任何两个字母

如何制作这个?

答案1

尝试这个:

  RewriteCond %{REQUEST_URI} !^/(da|de|en|en-uk)/
  RewriteRule ^/../(.*)$ /en/$1 [L,R]

我发现您的原始代码存在一些问题:

RewriteCond 末尾有一个句号和一个美元符号。这样只会匹配 /xx/X。删除美元符号可匹配末尾的任意长度。删除美元符号前的“.”可允许斜线后出现空匹配。

相关内容