导航栏菜单中的链接(我的站点 > 管理网络)指向(并不断重定向)不正确的 URL。
不正确的 URL 格式如下:
https://https//www.domain.com/wp-admin/network/
https://https//www.domain.com/wp-admin/network/sites.php
https://https//www.domain.com/wp-admin/network/settings.php
即使我在没有重复 https 的情况下手动输入了正确的 URL,我也会再次被重定向到错误的 URL。
看起来 https//www
设置在某处而不是 https://www
,我找不到在哪里。
我看过的地方还不错:
- wp-config.php (DOMAIN_CURRENT_SITE)
- .htaccess
- 站点表(仅限域,包含 www 但不包含 https 或 /)
- 选项表(situeurl 和 home)
- 站点元表
我还没有更新上述任何内容。 他们还好。 (所以不是缓存问题)
我尝试使用我的 phpMyAdmin 的搜索选项 https//www
但没有返回任何匹配项。
我还应该去哪里看?
有 5 个值需要更改。 从数据库。
wp_options: options named “siteurl” and “home”
wp_site
wp_sitemeta: the option named “siteurl”
wp_blogs: any entries in the “domains” column that have the old domain name
wp_#_options: Each sub-site will have sets of tables that correspond to the blog_id in the wp_blogs table. You need to go to the wp_#_options table, where # corresponds to the blog_id, and update the “siteurl” and “home” settings in that table.
注意:在大多数情况下,您可能/将需要更新 WP-Config.php 文件中的条目。 我建议查看的代码是此处的代码片段:
define('WP_ALLOW_MULTISITE', true);
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', true );
$base="https://wordpress.stackexchange.com/";
define( 'DOMAIN_CURRENT_SITE', 'mysite.com' );
define( 'PATH_CURRENT_SITE', "https://wordpress.stackexchange.com/" );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
多站点 URL 可在网络管理员、站点页面上进行编辑,然后编辑子站点(单击子站点的编辑链接,然后单击“设置”选项卡)。 您只能对子站点执行此操作。
‘siteurl’ 和 ‘home’ 值应该是站点的完整 URL,包括协议,如 https://www.example.com/site1 。 如果这些值不包含协议(“https://”部分),则该站点的任何链接都将包含您遇到的“双重协议”值。
无法在此屏幕上编辑主站点 URL; 进入 wp-options 表来解决这个问题(在两个地方)。
正如其他答案和评论所建议的那样,我从不更改 wp-config.php 文件中的站点 URL。 进行站点 URL 设置的正确位置(恕我直言)是 wp-options 表(对于主站点),上面的过程对于子站点。
请注意,上述过程还可以让您更改写入选项表的任何插件保存的任何不正确的 URL。 当我将网站移动到新域时,我不得不更改几次。