全部產品
Search
文件中心

Elastic Compute Service:手動搭建WordPress(Linux)

更新時間:Dec 25, 2025

為實現網站環境的完全自主管理,可手動部署LNMP架構並安裝WordPress,從而靈活構建部落格、門戶網站。

準備工作

  • 開通公網:為執行個體分配固定公網IP地址或綁定Elastic IP Address(EIP)。

  • 添加安全性群組規則:執行個體的安全性群組入方向允許存取TCP協議的2280連接埠。

操作步驟

以Alibaba Cloud Linux 3為例部署WordPress 6.4.4。

步驟一:部署LNMP環境

  1. 登入ECS執行個體。

    1. 訪問ECS控制台-執行個體。在頁面左側頂部,選擇目標資源所在的資源群組和地區。

    2. 進入目標執行個體詳情頁,單擊遠端連線,選擇通過Workbench遠端連線。根據頁面提示登入,進入終端頁面。

  2. 部署LNMP環境

    安裝Nginx、MySQL、PHP等核心組件。

    WordPress與PHP、MySQL版本存在依賴關係,版本不匹配則會導致WordPress安裝失敗。具體依賴資訊,請參見WordPress Compatibility

步驟二:建立WordPress資料庫

為WordPress建立一個專用的資料庫和資料庫使用者。

  1. 登入MySQL。密碼為搭建LNMP環境時為資料庫設定的密碼。

    mysql -u root -p
  2. 建立資料庫和使用者並授權。

    請記錄資料庫名稱、使用者名稱和密碼,供後續步驟使用。

    -- 建立名為 wordpress 的資料庫
    CREATE DATABASE WORDPRESS_DATABASE;
    
    -- 建立一個專用使用者 wordpress_user並設定密碼,建議設定一個包含大小寫字母、數字和特殊符號,長度不低於12位的強密碼。
    CREATE USER 'WORDPRESS_USER'@'localhost' IDENTIFIED BY 'WORDPRESS_PASSWORD';
    
    -- 賦予該使用者對 wordpress 資料庫的全部許可權
    GRANT ALL PRIVILEGES ON wordpress.* TO 'WORDPRESS_USER'@'localhost';
    
    -- 重新整理許可權使配置生效
    FLUSH PRIVILEGES;
    
    -- 退出MySQL
    EXIT;
    MySQL在5.7版本後預設安裝了密碼強度驗證外掛程式。密碼驗證規則:長度為8至30個字元,必須同時包含大小寫英文字母、數字和特殊符號,其中特殊符號包含()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/

步驟三:下載並配置WordPress

  1. 進入Nginx網站根目錄,下載6.4.4中文版WordPress。

    如需安裝WordPress英文版本,請將URL替換為https://wordpress.org/wordpress-6.4.4.zip,後續解壓的壓縮包名稱需替換為wordpress-6.4.4.zip
    sudo cd /usr/share/nginx/html
    sudo wget https://cn.wordpress.org/wordpress-6.4.4-zh_CN.zip
  2. 安裝unzip命令,解壓WordPress壓縮包。

    sudo yum install unzip -y
    sudo unzip wordpress-6.4.4-zh_CN.zip
  3. wp-config-sample.php檔案複製為wp-config.php,並將原檔案作為備份。

    cd /usr/share/nginx/html/wordpress
    sudo cp wp-config-sample.php wp-config.php
  4. 編輯設定檔,填入在步驟二中建立的資料庫資訊,包括資料庫名稱、使用者名稱和密碼。

    sudo vim wp-config.php

    i鍵進入編輯模式。

    /** WordPress資料庫的名稱 */
    define('DB_NAME', 'WORDPRESS_DATABASE');
    
    /** MySQL資料庫使用者名稱 */
    define('DB_USER', 'WORDPRESS_USER');
    
    /** MySQL資料庫密碼 */
    define('DB_PASSWORD', 'WORDPRESS_PASSWORD');
    
    /** MySQL主機 */
    define('DB_HOST', 'localhost');

    修改完成後,按Esc鍵,輸入:wq並按Enter鍵儲存退出。

步驟四:配置Nginx

修改Nginx的預設網站配置,使其正確處理PHP請求。

  1. 備份預設配置並建立新的Nginx設定檔。

    sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak
    sudo vim /etc/nginx/conf.d/default.conf
  2. 修改Nginx設定檔。

    i鍵進入編輯模式,在serverlocation ~ .php$模組內,將root後的內容替換為WordPress根目錄。樣本中WordPress的根目錄為/usr/share/nginx/html/wordpress

    image

    Esc鍵,輸入:wq後按Enter鍵,儲存退出設定檔。

  3. 檢查配置文法。

    如果顯示syntax is ok,則表示可以正常重啟。

    sudo nginx -t
    若檢查文法報錯,可通過sudo mv /etc/nginx/conf.d/default.conf.bak /etc/nginx/conf.d/default.conf恢複預設配置。
  4. 重啟Nginx使配置生效。

    sudo systemctl restart nginx

步驟五:安裝並登入WordPress網站

完成伺服器端配置後,需要通過瀏覽器完成WordPress的初始化。

  1. 在本地物理機上使用瀏覽器訪問http://ECS執行個體公網IP,進入WordPress安裝頁面。

  2. 填寫網站基本資料,包括網站標題、管理員使用者名稱密碼您的電子郵件,然後單擊安裝 WordPress

  3. 安裝成功後,單擊登入,使用上一步設定的使用者名稱和密碼登入。

    若成功登入,表示WordPress網站已成功搭建並運行。更多資訊,請參見WordPress官網使用文檔

後續步驟

通過FTP管理檔案

通過FTP上傳WordPress主題或者外掛程式,需要搭建FTP網站(Linux)

解析網域名稱並配置HTTPS

直接使用IP地址訪問網站不專業且不安全,建議為網站綁定網域名稱並啟用HTTPS加密。

  1. 註冊網域名稱並備案

    • 如果沒有網域名稱,可在阿里雲進行網域名稱註冊

    • 如果網域名稱指向的網站託管在阿里雲中國內地節點伺服器,需要進行備案。具體操作,請參見ICP備案流程

  2. 設定網域名稱解析

    將網域名稱解析到ECS執行個體的公網IP地址。

  3. 將執行個體公網IP替換為新網域名稱。

    1. 遠端連線執行個體,登入MySQL資料庫。

      mysql -u root -p
    2. 切換至WordPress對應的資料庫,設定網域名稱。

      public_ip替換為執行個體公網IP,將domain替換為網域名稱。

      use wordpress;
      UPDATE wp_options SET option_value = replace(option_value, 'http://PUBLIC_IP', 'http://DOMAIN') where option_name = 'home' OR option_name = 'siteurl';
      EXIT;
  4. 配置SSL認證(HTTPS) 

    部署SSL認證可以為網站啟用HTTPS加密資料傳輸,保護使用者隱私,並獲得更好的瀏覽器信任和SEO排名。

常見問題

無法通過公網IP訪問WordPress?

  • 檢查安全性群組與防火牆:確認執行個體安全性群組已允許存取80連接埠。

  • 檢查防火牆:確認作業系統內部防火牆(如firewalld)沒有阻止80連接埠。

  • 檢查服務狀態:在ECS上運行sudo systemctl status nginxsudo systemctl status php-fpm,確保服務處於active (running) 狀態。

  • 檢查連接埠監聽:確認80連接埠正被監聽。

具體排查方法,請參見無法訪問ECS執行個體中的服務的排查方法

WordPress中設定固定連結後,跳轉頁面無法訪問?

網站設定為靜態網頁有利於搜尋引擎收錄網站。在對WordPress網站設定固定連結前,需要先在Nginx伺服器中設定靜態規則。

  1. 遠端連線執行個體,開啟Nginx設定檔。

    sudo vim /etc/nginx/conf.d/default.conf

    i鍵進入編輯模式,在location /模組內,添加如下代碼。

    try_files $uri $uri/ /index.php?$args;

    Esc鍵,輸入:wq後按Enter鍵,儲存退出設定檔。

  2. 重啟Nginx服務,使配置生效。

    sudo systemctl restart nginx

WordPress中更新版本、上傳主題或外掛程式時,提示需要FTP登入憑證或無法建立目錄?

該問題可能是因為WordPress設定檔、主題或外掛程式的許可權不足,可以參考以下步驟解決。

  1. 登入ECS執行個體,開啟WordPress設定檔。

    sudo vim /usr/share/nginx/html/wordpress/wp-config.php

    i鍵進入編輯模式,在最下方,添加如下代碼。

    define("FS_METHOD","direct");
    define("FS_CHMOD_DIR", 0777);
    define("FS_CHMOD_FILE", 0777);

    Esc鍵,輸入:wq後按Enter鍵,儲存退出設定檔。

  2. 返回WordPress儀錶盤,重新整理頁面,可解決需要FTP登入憑證的問題。

    如果仍存在無法建立目錄的問題,將網站根目錄的許可權使用者更新為Nginx對應的使用者nginx

    sudo chown -R nginx /usr/share/nginx/html/wordpress

如何修改WordPress鏡像中的MySQL 5.7資料庫的預設使用者名和密碼?

  1. 遠端連線ECS執行個體,登入MySQL資料庫。

    mysql -u root -p
  2. 進入mysql資料庫,查看使用者名稱。

    use mysql;
    select user from mysql.user;
  3. 修改資料庫的使用者名稱和密碼。

    • 修改資料庫使用者名稱為新使用者名稱。

      UPDATE user SET user='NEW_USER_NAME' WHERE user='USER_NAME';

      以將root使用者名稱修改為admin為例:

      UPDATE mysql.user SET user='admin' WHERE user='root';
    • 修改資料庫使用者名稱的密碼。

      ALTER USER 'USER_NAME'@'localhost' IDENTIFIED BY 'PASSWORD'

      以將root使用者密碼改為Password@2025!為例:

      ALTER USER 'root'@'localhost' IDENTIFIED BY 'Password@2025!';
  4. 重新整理許可權使修改生效,退出MySQL資料庫。

    FLUSH PRIVILEGES; 
    EXIT;

相關文檔