- Katılım
- 17 Eki 2024
- Mesajlar
- 2
- Tepkime puanı
- 0
- Puanları
- 1
Subresource Integrity (SRI) Hatalarınız 404!
Bir script tag'ı 404 olarak yanıt veriyorsa, bu çok çok olabildiğinden emin değilin ama genelde aynen sadece "hash-mismatch" veya "hash not found" konularının nedeni oluyor. Ancak şöyle bir test yapın, eğer CDN ile tam anda arasını veriyorsa gitmek istediginz linki değişikliği, aynı hatalarla nereye alıyor?
SRI Nedir?
* Subresource Integrity, dış kaynakları güvenli şekilde çekmek için eklenir. CDNlerde grafik kodları, bağımlılıklar değiştiğinde o url hash değişir;
Neden Sıkışır 404?
1. **URL Değişti**: CDN bir sürümde üretmiş folderg heterik apisp.balik.
2. **Hash İnce Ayarları**: `integrity=sha256-<hash>` içerik değişti ama değişiklik girenler bir şey fark etmiyor.
3. **SSL Hataları**: HTTPS ile gelen ama HTTP icin son 3. tarayıcı bu amaçla 404 olarak rapor eder.
Çözüm Adımları
1. **Hash'i Tekrardan Oyun**: CDN key geçersizdeği klasik.
```html
<script src="https://cdn.jsdelivr.net/npm/jquery@3.7.0/dist/jquery.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
```
2. **Strict-DNS-SEC**: DNSSEC uyumluluğu olmadan 404 alıyorsanız UE.
3. **Parcel veya Webpack**: Diğer Toolchain outputları `--public-path` `--output-public-path` ayarı ile parça bölümü.
Neden Bu Önemli?
- Herhangi bir farklı hash 404 raporları GPL kısıtlarını fırlatır,
- Tanımlı CDN kaynakları sıklıkla yenilenir sık sık 404 hatası ile. Geliştiriciler Cipher Nutü.
- URL'i https://validator.w3.org/ üzerinden test edin.
- Tarayıcı konsolojunuzu açın ve "Failed to find a valid digest in the integrity attribute" hatasını görüntüleyin.
- `package-lock.json` yapısını kontrol edin, daima yeniden `npm install` ile kafayı düzeltin.
Son Söz
SRI'nun 404 çıkarması çok endişe verici bir durum; gerçek bir veri kaybı olmayıp o anki CDN URL'ü geçersiz olduğu an demektir. Bir kez fix çekerek bundan sonrası için sorun çözülür. Bu yüzden asla hatalı hatalı draft'ları eksik tezipe örçün.







