2016-09-30 118 views
0

我有一個wordpress網站www.domain.com,我們剛剛購買了一個SSL證書,但它只在domain.com(沒有www)上工作。我有我的.htaccess和網站URL配置Wordpress www到非www域名遷移

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^domain.com [NC] 
RewriteRule ^(.*)$ https://domain.com/$1 [L,R=301,NC] 

,這工作,但我的wordpress網站的網頁仍然在我的網站鏈接(例如圖像www.domain.com/uploads/images/01.jpg),這會導致用戶發出警告,因爲它不是完整的https。有沒有辦法解決這個問題,而不是手動編輯頁面內的所有鏈接,因爲這是一個大網站,我沒有時間一個接一個地編輯鏈接。有沒有插件?我也對使用插件猶豫不決,但如果有一個工作插件,我可以嘗試一下。

我讀了301重定向,但我不認爲它會工作,因爲鏈接保存在數據庫中? (我真的不知道)如果一個301重定向工作的缺點/優勢是什麼?例如。內存問題,CPU的更多工作?

+0

插件請求是題外話;那說,使用https:// interconnectit。com/products/search-and-replace-for-wordpress-databases /可安全地更改數據庫中的URL而不會破壞序列化數據。 – markratledge

回答

-1

您需要在您的數據庫進行一些請求更新存儲所有的URL:

  • 自己的帖子裏面的內容
  • 對的GUID(頁/職位/媒體的網址/ ...)

重要提示:在做類似的事情之前,請務必保存您的數據庫(以防萬一)。

這裏是我以前在這種情況下使用的要求:

# change the default prefix "wp_" by your actual prefix. 

# update site url in "wp_options" table 
UPDATE `wp_options` 
SET option_value = REPLACE(option_value, 'http://www.oldurl', 'http://www.newurl') 
WHERE option_name = 'home' 
OR option_name = 'siteurl'; 



# update "guid" in "wp_posts" table 
UPDATE `wp_posts` 
SET guid = REPLACE(guid, 'http://www.oldurl','http://www.newurl'); 



# update "post_content" in "wp_posts" table 
UPDATE `wp_posts` 
SET post_content = REPLACE(post_content, 'http://www.oldurl', 'http://www.newurl'); 



# Update "meta_value" in "wp_postmeta" 
UPDATE `wp_postmeta` 
SET meta_value = REPLACE(meta_value,'http://www.oldurl','http://www.newurl');

你只需要自定義適當的值這些請求,並通過phpmyadmin例如執行它們。

請求的原始來源:https://wpbeaches.com/updating-wordpress-mysql-database-after-moving-to-a-new-url/

+0

作爲那些運行SQL查詢的錯誤想法;您將在數據庫中打破序列化數據 - wp_options,主題和窗口小部件選項。無論如何,插件請求問題都是無關緊要的。 – markratledge

+0

謝謝你的回答。會301重定向解決這個問題?如果不是,那麼也許我會嘗試編輯數據庫,但我認爲會有序列化數據的問題 – Andrei

+0

我不認爲任何序列化的數據會受到第一個請求的影響,因爲我限制請求的行爲僅限於'home '和'siteurl'選項不存儲爲序列化字符串: 「WHERE option_name ='home' OR option_name ='siteurl';」 – Dexter0015

0

有沒有一種方法比手動編輯所有頁面內 環節,因爲這是一個大的網站來解決這個其他的我沒有 時間編輯鏈接一個接一個。

使用https://interconnectit.com/products/search-and-replace-for-wordpress-databases/使用該腳本,您可以選擇性地掃描您的帖子/頁面內容,選項表等,以便更改URL。此工具將正確反序列化/重新串行化主題選項,小部件選項等中的數據,因此您的主題設置不會中斷。在PHPMyAdmin或Adminer中使用SQL查詢會破壞序列化數據。

然後使用使用的開發工具在Firefox(或Firebug)或ChromeSafariIE看到什麼仍是不安全加載在網站上。

您可能必須更改functions.php和樣式表中的硬編碼URL。如果在任何一個絕對URL,您可以更改httphttps或刪除http:使URL協議無關,即改變http://example.com/jquery.js//example.com/jquery.js

+0

我在大約2年前使用過這種互連產品,它還能工作嗎?它可靠嗎?這是一個非常龐大的500MB文件的網站。 600個wordpress頁面和20個活動插件 – Andrei