我在.htaccess
中使用此功能将我的非www重定向到我的WordPress多站点中的www:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^[^.]+\.[a-z]{2,3}$ [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]
# 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]
</IfModule>
# END WordPress
它几乎完美无缺。只有一个问题 - 网络管理员转到http://domain.com/wp-admin/network/(没有www)并导致重定向循环。
有什么想法吗?
答案 0 :(得分:0)
如果有人仍然遇到此问题,请考虑将以下内容添加到您的wp-config.php中:
define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', '');
这可能会有所帮助。
答案 1 :(得分:0)
尝试访问时还有另一个可能的循环原因:
/wp-admin/network/
在以下位置的底部触发了重定向:
/wp-admin/network/admin.php
这将检查当前博客和当前网站是否具有相同的路径和域值,如果不相同,则会发生重定向。
再次检查 wp_blogs 表中指定的路径是否与当前站点上设置的路径相同。
这些值最终可能不同步,尤其是在目录中安装应用程序时。 / blog /
答案 2 :(得分:0)
在尝试访问wp-admin / network时,我也遇到了相同的重定向问题。执行以下更改即可解决此问题。
1)。在wp-config文件中,添加了www.website.com,而不仅仅是website.com define('DOMAIN_CURRENT_SITE','www.website.com');
2)。 phpmyadmin-> wp_blogs表 添加www。到域值
基本上,网站名称和博客名称必须完全相同。
干杯!
答案 3 :(得分:0)
如果您遇到 302 重定向循环错误并且无法访问 WP-CLI,您可以尝试在 web/wp/wp-includes/class-wp-site-query.php 的第 327 行禁用多站点缓存:
$cache_value = false;
如果网站开始工作,您可以删除此行后