modrewrite或php重写语言子目录

时间:2010-02-08 19:30:53

标签: php mod-rewrite

我想要一个.htaccess重写

so / en / home pulls / home /es/stuff.php拉//ph.php /fr/something/thisis.php pulls /something/thisis.php

没有在网址中显示。

2 个答案:

答案 0 :(得分:3)

像这样的东西

RewriteRule ^([a-z]{2})/(.*) $2 [L,NC]

如果要将当前语言存储为查询字符串值,请尝试使用

RewriteRule ^([a-z]{2})/(.*) $2?lang=$1 [L,NC,QSA]

如果您使用第二种方法,您可以使用PHP访问语言,如下所示:

$language = (preg_match('/^[a-z]{2}$/i', $_GET['lang']) ? $_GET['lang'] : 'en');

答案 1 :(得分:0)

尝试

RewriteRule ^/.{2}/(.*)$ /$1 [QSA,L]

这将删除所有2个字母的第一个目录