我有一个类似以下的网址:
http://www.domain.com/us/en/
我想重定向到:
http://www.domain.com/en_US/
实现这一目标的最简单方法是什么?
谢谢。
编辑:对于许多语言位置组合,这将是动态的。
更多信息:更简单的问题是有没有办法从第一个网址获取所有变量,并在第二个网址中使用它们进行正确的重定向。
http://www.domain.com/a/b/c/d
要:
http://www.domain.com/d/c/b/a
答案 0 :(得分:1)
在Apache config中添加以下行:
RewriteMap uppercase int:toupper
并重新启动服务器。
然后在DOCUMENT_ROOT/.htaccess
文件中添加此规则:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z]+)/([a-z]+)/?$ /$2_%{uppercase:$1}/ [L,R]
http://www.domain.com/a/b/c/d
要:http://www.domain.com/d/c/b/a
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/?$ /$4/$3/$3/$1/ [L,R]