多站点网络管理员,我的站点链接到非www网址

时间:2015-06-16 11:51:36

标签: wordpress multisite

我使用多站点wordpress,昨天我从http更改为https。起初我有很多关于更新网址的问题。所以我研究并应用了一些方法,如 查询更改https直接在MySQL上,设置.htacess如下:

RewriteEngine On
RewriteBase /

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

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]

还在functions.php上使用更新:

update_option('siteurl','https://www.//example.com');
update_option('home','https://www.example.com');

最后所有链接都运行良好。

但我在Netword管理菜单中遇到了一个问题

这是我的屏幕:

如何修复网络管理员菜单以显示https://www。 ?

由于

1 个答案:

答案 0 :(得分:0)

您的网站是MultiSite。网络管理菜单是其中的一部分。

您应该使用update_site_options全局更新网址

同样,请阅读following instruction,了解如何从HTTP切换到HTTPS

那里有一些亮点:

  

第一步是启用SSL进行管理。这很好   在Wordpress中记录,只需将以下语句添加到您的   WP-config.php中:

define('FORCE_SSL_ADMIN', true);
  

第二步是设置相对选项,设置和   常量以启用对隐私浏览的可选支持。

define('WP_SITE_URI',($_SERVER["HTTPS"]?"https://":"http://").$_SERVER["SERVER_NAME"]);
define('WP_SITEURI', ($_SERVER["HTTPS"]?"https://":"http://").$_SERVER["SERVER_NAME"]);
  

如果您愿意,可以抽出您的域名。这个例子假定   您的博客位于顶部目录中。在。添加一个子目录   如果你需要,请结束。然后在包含之前的某个地方   ' WP-设置'插入:

define("WP_CONTENT_URL", WP_SITE_URI . "/wp-content");
  

然后包含' wp-settings'添加:

wp_cache_set("siteurl_secure", "https://" . $_SERVER["SERVER_NAME"], "options");
wp_cache_set("home", WP_SITE_URI, "options");
wp_cache_set("siteurl", WP_SITE_URI, "options");
  

最后一项更改是作为插件实现的。

<?php
/* Plugin Name: Content over SSL
 * Description: Re-write content URIs to use the appropriate protocol
 * Author: Me
 * Version: .1
 */
 
add_filter('the_content', 'my_ssl');
 
function my_ssl($content) {
  if (isset($_SERVER["HTTPS"]))
    $content = ereg_replace("http://" . $_SERVER["SERVER_NAME"], "https://" . $_SERVER["SERVER_NAME"], $content);
  return $content;
}
?>