在HTTPS證書部署并接近到期時,需重新申請證書以維持通信安全。然而,若網站已配置HTTP至HTTPS的301永久跳轉,采用文件驗證方式(如通過文件驗證域名所有權)時,服務器會因強制跳轉導致驗證文件無法被正常訪問,進而使證書驗證流程失敗。為解決此問題,需在證書更新前臨時取消301跳轉規則,待文件驗證通過、新證書部署完成后,再重新啟用跳轉配置,確保HTTPS服務的連續性。
取消301跳轉的核心在于臨時禁用或移除觸發跳轉的配置規則,具體操作需根據服務器環境(虛擬主機、云主機)及偽靜態狀態(是否開啟偽靜態)進行調整。完成驗證后,需按原邏輯恢復配置,避免HTTPS訪問中斷。
場景一:網站未開啟偽靜態
通過FTP工具或文件管理器訪問網站根目錄,將web.config文件臨時重命名(如web.config.bak),以禁用原有配置中的301跳轉規則。驗證通過后,將文件恢復為原始名稱即可自動重建跳轉。
場景二:網站已開啟偽靜態
若web.config中包含偽靜態規則,需定位并移除301跳轉相關的代碼段。具體操作:以文本編輯器打開web.config,找到包含``至``的完整規則塊(通常包含``、``及``等節點),將其剪切或刪除后保存文件。驗證完成后,將代碼塊重新插入原位置。
場景一:網站未開啟偽靜態
通過FTP工具或文件管理器訪問網站根目錄,將.htaccess文件臨時重命名(如.htaccess.bak),禁用所有跳轉規則。驗證通過后恢復文件名即可。
場景二:網站已開啟偽靜態
直接編輯.htaccess文件,刪除其中與301跳轉相關的規則(通常包含`RewriteEngine On`及`RewriteRule ^(.)$ https://www.abc.com/$1 [L,R=301]`等指令),或將其注釋(行首加`#`)。驗證完成后取消注釋或恢復規則。
Windows系統云主機
操作邏輯與Windows虛擬主機一致:檢查網站根目錄下的web.config文件。若未開啟偽靜態,重命名文件;若已開啟偽靜態,僅移除301跳轉代碼段,保留其他偽靜態規則。
Linux系統云主機
- Apache引擎:操作同Linux虛擬主機,通過編輯.htaccess或虛擬主機配置文件中的301規則實現。
- Nginx引擎:登錄服務器編輯nginx配置文件(通常位于`/etc/nginx/conf.d/`或站點配置目錄),找到包含`return 301 https://$host$request_uri;`或類似`rewrite`指令的段落,在行首添加`#`注釋。驗證完成后取消注釋并重載nginx配置(`nginx -s reload`)。
登錄寶塔面板,進入“網站”列表,目標站點點擊“設置”,在“偽靜態”標簽頁中找到強制HTTPS的相關規則(如寶塔默認的`if ($server_port != 443){}`跳轉規則),臨時刪除或注釋該規則。驗證完成后恢復規則并保存,重啟Web服務(如Nginx/Apache)使配置生效。