1

我正在使用多站点 WordPressqTranslateX 插件。我的默认网站是马来语,我的第二语言是英语。当我在mydomain.com/multisite等模式语言英语中使用自定义链接时,它总是在 mydomain.com 之后添加“en”,它将是mydomain.com/en/multisite。该链接始终返回 404,因为没有页面。

我想使用 .htaccess 将 URL 从 mydomain.com/en/multisite 重写为 mydomain.com/multisite/en 。

提前致谢

4

1 回答 1

0

不幸的是,据我所知,仅靠 mod_rewrite 是无法实现的。Wordpress 将查看 REQUEST_URI 以确定要显示的内容,并且该内容不会被覆盖(并且[E=REQUEST_URI:...]会成功$_SERVER["REDIRECT_REDIRECT_REQUEST_URI"])。

如果还安装了 mod_proxy,您可以执行以下操作:

RewriteEngine On RewriteBase / RewriteRule ^en/([^/]+)(/?.*)$ /$1/en$2 [P,L]

它将在同一主机和服务器上内部代理请求。请求http://example.org/en/test在 wordpress 中看起来就像请求了http://example.org/test/en一样。

试试看。如果未安装 mod_proxy,它将无法工作(并为 URL 呈现 404),但它不会破坏您的站点,因此试验起来非常安全。

于 2017-10-03T07:24:30.927 回答