htaccess重定向问题

时间:2009-12-31 11:59:22

标签: .htaccess redirect

如果我网站的网址中没有语言参数,我想强制重定向到该网站的英文版本。我的网址是这样的:

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]

1 个答案:

答案 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]