javascript - 網站更改為https後該怎麼處理連結問題?

WBOY
發布: 2023-03-03 09:34:02
原創
1715 人瀏覽過

網站之前並沒有開啟https協議。
所有的鏈接都是絕對鏈接,幾乎沒有相對鏈接。
現在的狀況是開啟https後所有的絕對連結失效,圖片失效。因網站頁面較多,請問各位有沒有什麼辦法可以批次更改連結的?

回覆內容:

網站之前並沒有開啟https協議。
所有的鏈接都是絕對鏈接,幾乎沒有相對鏈接。
現在的狀況是開啟https後所有的絕對連結失效,圖片失效。因網站頁面較多,請問各位有沒有什麼辦法可以批次更改連結的?

直接使用 WEB 伺服器做永久重定向 ,NGINX 為例

<code>server{
    listen 80;
    server_name test.com;
    #告诉浏览器2年有效期内只准用 https 访问
    add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
    #永久重定向到 https 站点
    return 301 https://$server_name$request_uri;
}</code>
登入後複製

如果實在沒有權限設定配置,那麼寫個腳本批量替換一下羅,或者把程式碼下載到本地,然後用IDE批量替換一下。
修改前請先做備份
類似功能腳本

<code>sed -i "s/http:\/\/www.old.com/https:\/\/www.old.com/g" `grep http://www.old.com -rl /path/to/project`</code>
登入後複製

https://imququ.com/post/sth-a...

歷史悠久的大站在往 HTTPS 遷移的過程中,工作量往往非常巨大,尤其是將所有資源都替換為 HTTPS 這一步,很容易產生疏漏。即使所有程式碼都確認沒有問題,很可能某些從資料庫讀取的欄位中還存在 HTTP 連結。
而透過 upgrade-insecure-requests 這個 CSP 指令,可以讓瀏覽器幫忙做這個轉換。啟用這個策略後,有兩個變化:
頁面所有HTTP 資源,會被替換為HTTPS 地址再發起請求;
頁面所有站內鏈接,點擊後會被替換為HTTPS 地址再跳轉;
跟其它所有CSP 規則一樣,這個指令也有兩種方式來啟用,具體格式請參考上一節。要注意的是 upgrade-insecure-requests 只替換協定部分,所以只適用於 HTTP/HTTPS 網域和路徑完全一致的場景。

一般編譯軟體都有一鍵替換的功能。

重寫url應該可以

你的網站不會是全靜態頁面吧?如果不是那就改模板,還有,URL一般是透過一個指定函數產生的吧,改函數就可以了,圖片路徑,如果是資料庫裡的就批量替換一下就好了,頁面圖片文件,模板改一下就好了嘛

現在知道封裝的重要性了吧

403跳轉唄;

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板