Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 将WordPress中的HTTP://替换为HTTPS://_Mysql_Wordpress_Ssl_Https_Phpmyadmin - Fatal编程技术网

Mysql 将WordPress中的HTTP://替换为HTTPS://

Mysql 将WordPress中的HTTP://替换为HTTPS://,mysql,wordpress,ssl,https,phpmyadmin,Mysql,Wordpress,Ssl,Https,Phpmyadmin,随着谷歌对网站上的HTTPS越来越挑剔,我希望能够进行一个快速简单的SQL查询,用HTTPS://搜索并替换任何http:// 对于移动主机,我通常会执行以下操作: UPDATE wp_posts SET guid = replace(guid, 'http://www.oldurl','http://www.newurl'); 所以我试着做一些类似的事情 UPDATE `wp_commentmeta` SET 'meta_value' = REPLACE(`meta_value`, 'htt

随着谷歌对网站上的HTTPS越来越挑剔,我希望能够进行一个快速简单的SQL查询,用HTTPS://搜索并替换任何
http://

对于移动主机,我通常会执行以下操作:

UPDATE wp_posts SET guid = replace(guid, 'http://www.oldurl','http://www.newurl');
所以我试着做一些类似的事情

UPDATE `wp_commentmeta` SET 'meta_value' = REPLACE(`meta_value`, 'http://', 'https://');
但它似乎不起作用。无论如何,要同时处理整个数据库吗


  • 我在S.O.F.上尝试了一些选择,但都不奏效
  • 我宁愿不安装插件作为“修复”

如果有mySQL或htaccess脚本,我对这些解决方案更感兴趣。

您可以尝试或使用Interconnect/it


如果使用后者,则可以在替换URL后删除文件夹。

如果您有权编辑
.htaccess
文件,则可以在其中添加以下内容:

RewriteEngine on

# force SSL
RewriteCond     %{SERVER_PORT} ^80$
RewriteRule     ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
上面的代码将使用301(永久)重定向,如果不想使用301重定向,只需将最后一行的最后一部分从
[L,R=301]
更改为
[L,R]

如果您想更彻底地替换SQL,通常可以在
guid
列(特色图像)和
post\u content
列(反向链接等)的
posts
表中找到所有必要的链接。然后当然也在
post\u meta
表中-
meta\u value
列和
home
/
siteurl
选项
表中。以下是我通常使用的SQL查询:

UPDATE wp_options SET option_value = replace(option_value, 'http://example.com', 'https://example.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = REPLACE (guid, 'http://example.com', 'https://example.com');
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://example.com', 'https://example.com');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://example.com','https://example.com');

您可以尝试此免费Wordpress插件:

还可以通过其他方式查看本文:

请注意,您不应根据以下要求替换GUID:


第二部分是GUID永远不能更改。即使你转移了域名,帖子仍然是原来的帖子,即使是在一个新的位置。当您更改URL时,被转移到新提要的提要阅读器应该仍然知道他们以前读过您的一些帖子,因此GUID必须保持不变


第二部分是GUID永远不能更改。即使你转移了域名,帖子仍然是原来的帖子,即使是在一个新的位置。当您更改URL时,被转移到新提要的提要阅读器应该仍然知道他们以前读过您的一些帖子,因此GUID必须保持不变@GeorgeBirbilis你没有错,但是你没有考虑前期制作。例如,我使用/构建的大多数网站都托管在预制作URL上。因此,读者被封锁,什么也没读过。移动到实时URL时,您应该完全更改GUID。如果您的站点结构已更改,GUID应保持不变,但如果您的FQDN已更改,则GUID也必须更改。我特别指的是“mysubdomain.mypreproductionserver.com”更改为“mylivedomain.com”URL。事实上,如果站点基于模板,则更改它们不会有任何伤害,但根据文档,当将站点移动到其他域(或仅移动到https)时,不应触碰这些域。根据doc feed阅读器使用这些作为键,当用户切换feed url并将所有旧的/已读的帖子再次显示为未读时,他们可能不够聪明,无法适应