2010-05-12 73 views
0

我試圖將WordPress安裝從一臺服務器移到另一臺服務器,包括所有的SQL數據和文件系統數據(照片,模板文件)。WordPress - 從一臺主機移動到另一臺

我只是在更改數據庫中的URL時出現問題,因爲我需要用舊的替換新的URL。

我很想有,我怎麼能更換網址,提出了一些建議(也許有在一個SQL語句RPLACE?)

在此先感謝。

回答

4

編輯2015年5月16日

這是更好的使用interconnectit.com WordPress Serialized PHP Search Replace Tool查找/替換數據庫中的URL和正確反序列化/重新序列化的數據。在文本轉儲或下面的查詢中查找/替換會破壞序列化的數據。


幾種簡單的方法:How to Move WordPress Blog to New Domain or Location » My Digital Life

UPDATE wp_options SET option_value = replace(option_value, 
'http://www.old-domain.com', 'http://www.new-domain.com') 
WHERE option_name = 'home' OR option_name = 'siteurl'; 

及其他: How to Find and Replace Text in WordPress MySQL Database using SQL When Changing Domains » My Digital Life

Search RegEx « WordPress Plugins通過文章和網頁作爲WP基於插件的方式grepping更換圖像和其他網址帖子和頁面。

而且還有Moving WordPress « WordPress Codex.

+0

投票songdogtech爲一個偉大的答案和資源! – hsatterwhite 2010-05-13 00:54:34

1

您可以簡單地將mySQL轉儲到平面文件中,然後在您喜歡的編輯器中打開它。如果您確實更改了域名,則可以查找並替換完全限定的域名。這應該照顧WordPress的具體網址設置,所以你在頁面,帖子,側邊欄等鏈接將工作。另外請務必更改DB中記錄的本地路徑以反映新的內容。

一旦你完成導入mySQL文件到新的數據庫,並有它。如果在運輸過程中發生錯誤,你肯定會知道。 :)

0

確實是有a REPLACE() function in MySQL,但我會建議做hsatterwhite暗示什麼,編輯整個MySQL的轉儲爲平面文件重新導入之前,不僅是因爲REPLACE()函數是區分大小寫。

0

我認爲這傢伙正在談論他的頁面/帖子內容中的硬鏈接。您需要應用@markratledge MySQL的替換功能鏈接這...

UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://www.old-domain.com', 'http://www.new-domain.com');

這將取代你交/頁內容的所有鏈接...

0

1)在當前的服務器上,去到phpMyAdmin和導出數據庫

2)在你喜歡的代碼編輯器中打開導出的文件,查找並在整個文檔中替換你的前基本URL(http://www.exdomain.com)你新(http://www.newdomain.com

3)去新服務器,與phpMyAdmin

4)改變DB用戶名/密碼/主機您在wp-config.php文件

5)轉讓導入SQL文件通過ftp a將舊服務器中的文件更新到新的文件

並且您應該完成。

如果你還改變目錄路徑:刪除你的.htaccess,並讓Wordpress生成一個新的更新後端的永久鏈接選項。

這對我來說一直有效,當我將本地主機安裝移動到最終的生產服務器時,我使用它來執行此操作。

希望它有幫助。

+0

感謝您的幫助! – Maor 2010-05-16 13:13:43

1

要注意的一件事是,WordPress使用序列化數組(一些插件,如cforms,這樣做)存​​儲它的一些數據。

在站點URL數據可能被序列化的情況下,只需更新站點URL文本就可以更改序列化字符串中數據的長度,破壞數據並破壞事情。

Dave Coveney在WordPress數據庫中進行搜索替換時編寫了php script that takes serialisation into account。我在很多WordPress遷移中都使用過這個腳本,它對我來說是一個救命稻草。

0

這是一個非常直接轉發過程與沒有多餘的裝飾,但非常詳細的新手

  • 請使用您的cPanel本地服務器/主機完整的WordPress的備份。 (wp + db)
  • 下載backup1.tar.gz生成
  • 在目標主機上安裝一個新的wp站點(默認主題)。請同樣釋放!
  • 警告:如果它們不同,請利用這兩個版本。
  • 使用cPanel從目標主機進行完整的wordpress備份。 (wp + db)
  • 下載backup2.tar.gz生成
  • 另外備份(導出)wp-admin和wp-users目標mysql備份;將它們保存以備將來使用。
  • 輸入目標主機的cPanel>文件管理器>進入WP diretory>清除所有文件
  • 上傳本地主機WP backup1.tar.gz文件複製到目標主機的wp目錄>提取文件
  • 拷貝wp-config.php文件backup2.tar.gz文件
  • 在目標主機wp目錄中覆蓋覆蓋wp-config.php文件
  • 輸入目標主機> cpanel> phpmyAdmin>找到您的目標wp主機的mySQL BD名稱並刪除所有表。
  • 本地wp使用backup1.tar.gz將softsql.sql文件還原到目標主機上的mySQL db
  • 在還原後刪除wp-admin和wp-users表。還原(導入)之前保存的wp-admin和wp-users。這將保證輸入目標主機wp管理任務時的目標wp身份驗證。
  • 測試目標主機wp url
  • wp-config.php複製/粘貼是爲了恢復目標主機wp和原始的mySQL認證。
  • 在/ wp-admin模式下測試目標wp。
  • 就是這樣!請享用。
相關問題