.htaccess htaccess将根文件夹和子文件夹语言页面重定向到/en

.htaccess htaccess将根文件夹和子文件夹语言页面重定向到/en,.htaccess,redirect,mod-rewrite,url-rewriting,friendly-url,.htaccess,Redirect,Mod Rewrite,Url Rewriting,Friendly Url,我想使用htaccess将页面重定向到子文件夹。我尝试了下面的代码,但我的htaccess规则不考虑包含子文件夹(如或)的url。只有根页面可以很好地从?lang=en更新到/en/ (KO)domain.com/?lang=en>domain.com/en/ (KO)domain.com/folder/?lang=en>domain.com/en/folder/ (KO)domain.com/folder/folder2/?lang=en>domain.com/en/folder/fol

我想使用htaccess将页面重定向到子文件夹。我尝试了下面的代码,但我的htaccess规则不考虑包含子文件夹(如或)的url。只有根页面可以很好地从?lang=en更新到/en/

  • (KO)domain.com/?lang=en>domain.com/en/

  • (KO)domain.com/folder/?lang=en>domain.com/en/folder/

  • (KO)domain.com/folder/folder2/?lang=en>domain.com/en/folder/folder2/

以下是我到目前为止所做的尝试:

# BEGIN LANGUAGE REDIRECTION
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{QUERY_STRING} lang=en
# exclude all requests starting with /wp-admin/
RewriteCond %{REQUEST_URI} !^/wp-admin/.*$
RewriteRule ^(.*) /en/$1? [L,R=301]
</IfModule>
# END LANGUAGE REDIRECTION
#开始语言重定向
重新启动发动机
RewriteCond%{QUERY_STRING}lang=en
#排除以/wp admin开头的所有请求/
重写cond%{REQUEST_URI}^/wp admin/*$
重写规则^(.*)/en/$1?[L,R=301]
#终端语言重定向

根据您展示的样品,请尝试以下内容。请确保在测试URL之前清除浏览器缓存。这将重定向/重写,并在URI之前添加案例中的语言
en
(根据显示的示例)

RewriteEngine ON
RewriteCond %{QUERY_STRING} ^lang=(.*) [NC]
RewriteRule ^(.*)$ %1/$1 [R=301,NE,QSD,L]