我正在使用多站点WordPress 和 qTranslateX插件。我的默认网站是Bahasa,我的第二语言是英语。当我在模式语言英语中使用自定义链接时,例如 mydomain.com/multisite ,它总是在mydomain.com之后添加“en”,它将是 mydomain.com/en/multisite 。该链接始终返回404,因为没有页面。
我想使用.htaccess将网址mydomain.com/en/multisite重写为mydomain.com/multisite/en。
提前致谢
答案 0 :(得分: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),但它不会破坏你的网站,所以试验它是非常安全的。 / p>