我在这里安装了WordPress Multisite:mydomain.com 我使用它来使用不同的语言,例如:
mydomain.com/fr
mydomain.com/de
...
现在我们正在改变设计,但是我们希望一步一步地,逐语言地进行。
因此,我们在/ new文件夹中安装了另一个Wordpress Multisite,它可以与类似这样的网站完美配合
mydomain.com/new/fr
mydomain.com/new/de
...
我们想将JUST THE FRENCH语言重定向到新的wordpress。我已经尝试在根文件夹中使用此.htaccess(基于Wordpress documentation中的信息:
RewriteCond %{HTTP_HOST} ^mydomain.com$
RewriteCond %{REQUEST_URI} !^/fr/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^fr(.*)$ /new/fr/$1
RewriteCond %{HTTP_HOST} ^mydomain.com$
RewriteRule ^fr(/)?$ /new/fr/index.php [L]
但这给出了“建立数据库连接时出错”。这很奇怪,因为正如我所解释的,网站mydomain.com/new/fr运作良好。
注意:我们不想使用子域,我知道这会带来不同的方法和解决方案;-)
编辑:错误是因为该查询
SELECT blog_id FROM wp_blogs WHERE domain IN ( 'mydomain.com' ) AND path IN ( '/fr/', '/' ) ORDER BY CHAR_LENGTH(path) DESC LIMIT 1
我猜想,重定向工作正常,但是当“ new”目录中的wordpress试图确定要访问的博客时,它会读取URL,并且实际上位于“ /”中,因为重定向规则具有[L]并将原始URL保留在apache环境变量中。
答案 0 :(得分:3)
如果您在WordPress 3.5或更高版本上激活了多站点,则可以按照.htaccess and Mod Rewrite
部分中的documentation setup
根据文档:
.htaccess和Mod重写与单站点WordPress不同,后者可以正常工作 与“丑陋”的永久链接,因此不需要Mod Rewrite,MultiSite 需要使用它来格式化您的子站点的URL。这需要 .htaccess文件的使用,其格式将略有不同 如果您使用SubFolders或SubDomain,则有所不同。下面的例子 是WordPress子文件夹的标准.htaccess条目, 子域,当WordPress安装在您的根文件夹中时 网站。如果您自己的文件夹中有WordPress,则需要 适当更改RewriteBase的值。