vue打包部署后頁(yè)面打不開(kāi),發(fā)現(xiàn)http請(qǐng)求變成https

發(fā)生過(guò)程:
功能開(kāi)發(fā)完成之后打包發(fā)到線上發(fā)現(xiàn)頁(yè)面打不開(kāi),于是看了網(wǎng)站上的報(bào)錯(cuò),


圖1.png
圖2.png

主要是出現(xiàn)上圖1和圖2的問(wèn)題,當(dāng)時(shí)在想為什么會(huì)重定向成https.
經(jīng)過(guò)不停的查找,終于發(fā)現(xiàn)是index.html里面的一行代碼導(dǎo)致的,代碼如下:

image.png

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">的作用解釋:
該標(biāo)簽是一個(gè)HTTP頭部等價(jià)物,用于在HTML文檔中指定內(nèi)容安全策略(CSP),upgrade-insecure-requests指令的作用是自動(dòng)將頁(yè)面上的所有不安全請(qǐng)求(如HTTP請(qǐng)求)升級(jí)為安全請(qǐng)求(HTTPS請(qǐng)求),這有助于增強(qiáng)網(wǎng)站的安全性,防止中間人攻擊和數(shù)據(jù)泄露
需要注意的是,正確的HTTP頭部字段應(yīng)該是Content-Security-Policy,而不是在<meta>標(biāo)簽中使用的http-equiv屬性。但在<meta>標(biāo)簽的上下文中,使用http-equiv來(lái)模擬HTTP頭部是一種常見(jiàn)的做法。然而,對(duì)于CSP來(lái)說(shuō),最佳實(shí)踐是通過(guò)HTTP響應(yīng)頭來(lái)設(shè)置,因?yàn)椴⒎撬袨g覽器都支持在<meta>標(biāo)簽中設(shè)置CSP,
所以最佳實(shí)踐是服務(wù)器配置來(lái)設(shè)置CSP頭部,而不是在HTML中。如果你使用的是Vue CLI構(gòu)建的項(xiàng)目,并且部署在支持自定義HTTP頭部的服務(wù)器上(如Nginx、Apache等),你應(yīng)該在服務(wù)器配置中添加CSP頭部

對(duì)Vue項(xiàng)目安全性帶來(lái)的具體影響:

引入upgrade-insecure-requests指令后,Vue項(xiàng)目中的所有不安全請(qǐng)求都將被自動(dòng)升級(jí)為安全請(qǐng)求。這有助于防止敏感數(shù)據(jù)在傳輸過(guò)程中被截獲或篡改,從而提高項(xiàng)目的安全性。然而,這并不能替代其他安全措施,如使用HTTPS、驗(yàn)證輸入、防止跨站腳本攻擊(XSS)等。

下面是一個(gè)在Nginx中設(shè)置CSP頭部的示例:

server {
    listen 80;
    server_name example.com;

    location / {
        # 其他配置...

        # 設(shè)置CSP頭部
        add_header Content-Security-Policy "upgrade-insecure-requests";
    }

    # 其他配置...
}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容