因為各種原因,我們有時候需要更換WordPress 的域名,而WordPress 的域名是直接寫入到數據庫中的,直接更換伺服器中WordPress 站點綁定的域名顯然是不行的,除了這個工作,我們還需要替換WordPress 資料庫中的舊域名為新域名,才算徹底完成WordPress 的域名更換工作。
本文中,我將為大家介紹幾種更換 WordPress 網域的方式。需要事先提醒大家的是,修改 WordPress 資料庫之前,一定要做好備份,以防萬一。
使用wp-cli 工具搜尋替換網域的方式更換WordPress 網域
wp-cli 是一個命令列工具,可以讓我們透過命令列安裝、更新WordPress ,對WordPress 執行一些批次操作,使用起來相當方便。
安裝 wp-cli 工具
如果已經安裝了 wp-cli 工具,請直接進行下一步。
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar chmod +x wp-cli.phar sudo mv wp-cli.phar /usr/local/bin/wp
搜尋替換WordPress 資料庫中的網域名稱
wp-cli 工具為我們提供了一個搜尋替換資料庫中字元的命令,直接在WordPress 的根目錄執行以下命令即可完成更換WordPress 網域的操作,該指令支援一些選項方便我們自訂操作,具體查看wp search-replace 命令的官方說明。
wp search-replace 'old.com' 'new.com'
使用 SQL 語句直接在資料庫中取代網域名稱
#在 phpMyAdmin 中直接執行下面的指令取代舊網域為新網域即可。複製程式碼後,替換程式碼中 old.com, new.com, 如果您的 WordPress 網站使用了自訂資料表前綴,同時修改下面命令中的 ‘wp_’ 資料表前綴。
UPDATE wp_options SET option_value = replace(option_value, 'http://old.com', 'http://new.com') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET guid = replace(guid, 'http://old.com','http://www.newurl'); UPDATE wp_posts SET post_content = replace(post_content, 'http://old.com', 'http://new.com'); UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://old.com','http://new.com'); UPDATE wp_usermeta SET meta_value = replace(meta_value, 'http://old.com', 'http://new.com'); UPDATE wp_comments SET comment_content = REPLACE (comment_content, 'http://old.com', 'http://new.com'); UPDATE wp_comments SET comment_author_url = REPLACE (comment_author_url, 'http://old.com','http://new.com');
大多數情況下,寫入WordPress 中的域名都存在於上面幾個數據表中,但是也不排除主題或插件添加的自定義數據表也包含舊域名,如果執行了上面的指令後,還有一些舊網域沒有被替換掉,可以參考下面直接編輯.sql 檔的方法來替換。
使用程式碼編輯器編輯.sql 匯出檔案直接取代
匯出.sql 文件,然後使用你喜歡的程式碼編輯器開啟匯出的.sql 文件,搜尋替換舊域名為新域名。
然後直接刪除網站資料庫中的所有資料表,再匯入到資料庫即可。
設定301 跳轉把舊網域的流量匯入新網域
#如果您的網站已經被搜尋引擎收錄了,可以在Nginx 中做一個301 跳轉設置,把舊域名的流量匯入到新域名。
server { listen 80; server_name old.com new.com; return 301 http://new.com$request_uri; }
最後,再次提醒,修改 WordPress 資料庫之前一定要做好備份,萬一修改過程中出了問題,我們還可以很簡單的把資料恢復過來,不至於造成太大的損失。
更多WordPress技術文章,請造訪WordPress教學專欄!
以上是wordpress怎麼換域名的詳細內容。更多資訊請關注PHP中文網其他相關文章!