如果我网站的网址中没有语言参数,我想强制重定向到该网站的英文版本。我的网址是这样的:
http://localhost:8888/site_name/products http://localhost:8888/site_name/products/a-nice-product
等
如果/ site_name / id之后没有“en”,“fr”或“nl”,就像htaccess一样,将它重定向到当前url是什么,但在/ site_name /之后添加了“en”。
如何使用.htaccess文件进行此操作?
目前的.htaccess规则是
RewriteEngine On
RewriteBase /site_name/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteRule ^(.*)$ /site_name/index.php?$1 [L]
答案 0 :(得分:1)
试试这个mod_rewrite代码:
RewriteEngine on
RewriteCond $2 !^(en|fr|nl)/
RewriteRule ^([^/]+)/(.*) $1/en/$2 [L,R=301]
修改现在您已经在/site_name/
,请尝试以下规则:
RewriteCond $1 !^(en|fr|nl)$
RewriteRule ^([^/]+)/.* /site_name/en/$0 [L,R=301]