我正在运行一个安装了qTranslate的WordPress站点。url目前显示为http://domain.com/en/,但我想把它们改为http://en.domain.com
我如何使它工作?qTranslate有一个内置的预域模式,它应该做我所需要的。但它所做的只是改变链接(工作),当访问页面我得到一个404错误。
在管理中,它说"Pre-Path和Pre-Domain模式只适用于mod_rewrite/pretty permallinks。Pre-Domain模式需要额外的配置!"
我得到了预路径工作,我认为我使用了漂亮的永久链接(/%category%/%postname%/),但我不知道需要什么样的"额外配置"。
我的。htaccess看起来像这样(我认为标准wp输出);
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
我尝试了很多不同的东西在网上找到,但我大多得到内部服务器错误或只是404。
提前感谢!
如果您的默认url以www(如www.domain.com)开头,那么您的翻译url将看起来像en.www.domain.com。
但是如果你试图登录en.domain.com,你可能会认为你的插件不工作。
-
在尝试任何事情之前,请确保任何子域显示您的WordPress主页。在默认设置下,WordPress不会重定向到你。
-
然后设置你的默认url没有www前缀(例如domain.com)
-
最后检查永久链接
如果你在任何步骤失败,禁用所有插件,甚至将你的主题更改为默认的
您必须在域名的DNS设置中添加通配符域设置。https://codex.wordpress.org/Configuring_Wildcard_Subdomains
通配符域名重定向与WordPress参见此文章