Nil*_*les 4 mysql wordpress ssl https phpmyadmin
随着谷歌越来越挑剔左右HTTPS的网站,我希望能够做一个快速简便的SQL查询来搜索和替换什么http://
用https://
我通常会为移动主机执行以下操作:
UPDATE wp_posts SET guid = replace(guid, 'http://www.oldurl','http://www.newurl');
Run Code Online (Sandbox Code Playgroud)
所以我试着做类似的事情
UPDATE `wp_commentmeta` SET 'meta_value' = REPLACE(`meta_value`, 'http://', 'https://');
Run Code Online (Sandbox Code Playgroud)
但它似乎没有用。无论如何要一次完成整个数据库?
如果有 mySQL 或 htaccess 脚本,我对这些解决方案更感兴趣。
如果您有权编辑.htaccess
文件,则可以将以下内容添加到其中:
RewriteEngine on
# force SSL
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
Run Code Online (Sandbox Code Playgroud)
上面的代码将使用 301(永久)重定向,如果不想使用 301 重定向,您可以简单地将最后一行的最后一部分从[L,R=301]
更改为[L,R]
。
如果您想更彻底地替换 SQL,您通常可以posts
在guid
列(特色图像)和post_content
列(反向链接等)内的表中找到所有必要的链接。然后当然也在post_meta
表格内 -meta_value
列和home
/siteurl
在您的options
表格内。这是我通常使用的 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');
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10882 次 |
最近记录: |