htaccess:我无法在 WordPress 应用程序上正确重定向到嵌套子文件夹

htaccess:我无法在 WordPress 应用程序上正确重定向到嵌套子文件夹

我有一个多语言 WordPress 网站,有两种语言:英语和德语,这是 A 站点

我想将我的其他 WordPress 网站放在 /tr/shop/ 文件夹中,这是 B 站点

只需要这些规则:

  • /en/任何东西/前往站点 A (也 /en/)
  • /tr/任何东西/前往地点 A (也 /tr/)
  • /tr/商店/进入站点 B 的 /tr/shop 子文件夹内。

现在:

  • 如果访问者访问 /en/ 或 /en/anything,则没问题。
  • 如果访问者访问 /tr/shop/,他们会看到站点 B,这没问题。因为该文件夹存在。
  • 访问 /tr/* 的访问者会看到 404 错误。因为 /tr/ 是一个物理文件夹,但是是空的。它只是一个语言前缀,而不是物理文件夹。我需要从请求中排除 /tr/ 文件夹。

我该怎么做?

我当前的 .htaccess 如下,但是不起作用。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /

# Exclude /tr/ from rewriting
RewriteRule ^tr(/.*)?$ - [L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# Beginning of shop part
RewriteRule ^tr/shop(/.*)?$ /tr/shop/$1 [L]
RewriteRule ^tr(/.*)?$ /index.php [L]
# End of shop part
</IfModule>

相关内容