.htaccess子域语言



我正在运行一个安装了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参见此文章

相关内容

  • 没有找到相关文章

最新更新