我已将网址中的语言代码从3更改为2.因此我想通过.htaccess将任何旧网址重定向到新网址
示例:我想更改网址 -
1)http://example.com/eng/News至http://example.com/en/News
2)http://example.com/deu/News至http://example.com/de/News
我正在使用CakePHP,这是默认的.htaccess
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
我试过用这个:
RewriteRule (.*)/deu/(.*) $1/de/$2 [L]
但它没有用。 有人可以帮忙吗?
答案 0 :(得分:0)
根据URL示例,您应该使用以下指令:
RewriteCond %{REQUEST_URI} ^/eng
RewriteRule ^/(.*)/(.*)$ /en/$2 [R]
RewriteCond %{REQUEST_URI} ^/deu
RewriteRule ^/(.*)/(.*)$ /de/$2 [R]
第一个RewriteCond指令将检查URI是否从/ eng开始。如果是,则相应的RewriteRule将“eng”替换为“en”并附加URI的其余部分,该参数可在参数$ 2中使用。 R标志将启动重定向,以便在浏览器中显示新URL。同样适用于deu。