我的网站有两种语言,德语和英语。 我现在工作的URL Rewrite是:
RewriteRule ^(de|en)/(.*)$ index.php?lang=$1&content=$2 [L,QSA]
lang参数定义语言,内容参数 - 权限,内容。 我现在想要的是,如果有人使用www.example.com($ URL)访问我的网站,则应将其重定向到$ URL / en /。 如果有人附带其他语言,则de或en($ URL / cz /) - >重定向到$ URL / en /
第二条规则应如何看待?
更新:
我现在有:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(de|en)/(.*)$ index.php?lang=$1&content=$2 [L,QSA]
RewriteCond %{QUERY_STRING} !^lang=(de|en)
RewriteRule (.*) /en/ [R=301,L]
那应该是诀窍,但我的css / js /等。消息来源现在也受到这些条件的影响。 %{REQUEST_FILENAME} !-d
和%{REQUEST_FILENAME} !-f
似乎无效。
UPDATE2: 珠瑚! 在第一个条件/规则集之后,必须再次设置文件和目录的条件,即代码:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(de|en)/(.*)$ index.php?lang=$1&content=$2 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} !^lang=(de|en)
RewriteRule (.*) /en/ [R=301,L]