Wordpress Multisite 404错误

时间:2015-05-05 07:41:50

标签: wordpress apache .htaccess permalinks multisite

我目前正面临wordpress多站点/永久链接/重写规则问题。 我的wordpress网站使用多站点。我已经获得2014年网站链接到" exemple.fr"以及2015年的第二个网站" exemple.fr/2015 /"。 正如您可能猜到的,我使用多站点的子文件夹配置。

问题出现在第二个网站(2015)上,除了家庭以外,每个页面都返回404错误。第一个工作为例外。 我已经尝试过了:

  • mod_rewrite启用
  • 我的vhost文件包含AllowOverride All
  • 指令
  • 这是我的.htaccess文件,它是带有子目录的多站点的默认wordpress:
# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

# END WordPress
  • 如果我将永久链接设置为"默认"问题会消失。在2015年的网站上,但我的链接不是我想要的。

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

最后让它在经过几个小时的尝试后才能运作。 问题来自与插件“Polylang”(https://wordpress.org/plugins/polylang/)的冲突。这个插件安装在网站上,甚至没有使用或配置。

当在网站上激活插件并且任何人保存永久链接配置时,它破坏了配置(在数据库中,wp_option rewrite_rules缺少所有模式前面的“blog /”)。 一旦我们禁用插件并再次保存永久链接配置,它就会再次运行。我认为没有人保存这个配置,因为插件安装在网站上,上周我的客户可能会尝试更改永久链接配置并偶然发现该问题。

在调试特定的偷偷摸摸的bug时不要忘记尝试禁用所有插件(而不是像我做的那样在调试后一天可能会更好),这是我的建议!