首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 更多程式設計知識

Nginx 實作 301 永久重導向:統一網域存取入口

     編輯:更多程式設計知識

為了提升日本地區用戶的存取速度,曾嘗試使用韓國 DNS 服務 dnsever,但其免費方案的 301 重導向功能竟需付費,否則會在跳轉頁插入廣告。為避免廣告干擾,決定直接在 Nginx 設定檔中實作 301 重導向,將無 www 的網域請求永久導向帶 www 的標準網址。

設定範例

在 Nginx 虛擬主機設定檔(通常是 nginx.conf 或 sites-available/ 下的站點設定)的 server 區塊內加入:

if ($host != 'www.yourdomain.com') {
    rewrite ^/(.*)$ https://www.yourdomain.com/$1 permanent;
}

指令說明

  • $host:請求標頭中的 Host 值。
  • rewrite:使用正則捕獲完整請求路徑 (.*) 並重組目標 URL。
  • permanent:回傳 HTTP 301 狀態碼,告知瀏覽器與搜尋引擎永久遷移,利於 SEO 權重傳遞。
  • 若需臨時重導向,可改用 redirect(回傳 302)。

部署與驗證

  1. 修改設定檔後執行 nginx -t 語法檢查。
  2. 通過後執行 systemctl reload nginx 或 nginx -s reload 重載設定。
  3. 使用 curl -I https://yourdomain.com 確認回應為 301 Moved Permanently 且 Location 指向 www.yourdomain.com。

此做法不僅免去 DNS 服務商的額外費用,也能完全掌控重導向行為,確保使用者體驗乾淨無廣告。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved