Opis problemu:
Na stronie wydawcy reklamy nie były wyświetlane, a w konsoli przeglądarki (F12) pojawiał się błąd:
Refused to frame 'https://mediaboxy.pl' because it violates the following Content Security Policy directive: "frame-src 'self'".
Oznaczało to, że aktywna polityka Content Security Policy (CSP) zezwalała na osadzanie ramek (iframe) wyłącznie z tej samej domeny, blokując tym samym ładowanie treści reklamowych z zewnętrznych dostawców reklam np. z systemu MediaBoxy.
Co to jest CSP? Content Security Policy to mechanizm bezpieczeństwa przeglądarek, który określa, z jakich źródeł strona może ładować zasoby takie jak skrypty, obrazy, style czy ramki iframe. Nieprawidłowo skonfigurowana polityka CSP może skutecznie blokować zewnętrzne systemy reklamowe.
Rozwiązanie:
Aby umożliwić poprawne wyświetlanie reklam, należy dodać domenę MediaBoxy do dozwolonych źródeł w polityce CSP. W tym celu otwórz plik .htaccess w głównym katalogu strony i rozszerz dyrektywę frame-src, dodając domenę https://mediaboxy.pl. Po zapisaniu zmian i odświeżeniu strony reklamy powinny zacząć wyświetlać się poprawnie.
Poprawiona reguła w .htaccess:
<IfModule mod_headers.c>
Header always set Content-Security-Policy "\
frame-src 'self' https://mediaboxy.pl https://*.mediaboxy.pl; \
script-src 'self' 'unsafe-inline' 'unsafe-eval' https://mediaboxy.pl; \
img-src 'self' data: https: http:; \
media-src 'self' https: http:; \
style-src 'self' 'unsafe-inline' https:;"
</IfModule>
Co oznaczają poszczególne dyrektywy:
• frame-src – dozwolone źródła dla iframe (reklamy MediaBoxy)
• script-src – dozwolone źródła dla skryptów JavaScript
• img-src – dozwolone źródła dla obrazów
• media-src – dozwolone źródła dla wideo i audio
• style-src – dozwolone źródła dla stylów CSS
Wnioski:
Problem z niewyświetlaniem reklam nie wynikał z błędu systemu MediaBoxy, lecz z restrykcyjnej konfiguracji Content Security Policy (CSP) po stronie wydawcy. Polityka CSP, ustawiona wyłącznie na frame-src 'self', skutecznie blokowała ładowanie treści reklamowych osadzanych w iframe z zewnętrznych domen, mimo że były one poprawnie zaimplementowane w kodzie strony.
Zastosowanie właściwego rozwiązania – czyli rozszerzenie polityki CSP o domenę MediaBoxy – przywróciło prawidłowe działanie reklam bez obniżania poziomu bezpieczeństwa strony. Przypadek ten pokazuje, że przy korzystaniu z zewnętrznych systemów reklamowych kluczowe jest świadome i precyzyjne zarządzanie polityką CSP. Odpowiednio skonfigurowana polityka bezpieczeństwa pozwala jednocześnie chronić witrynę i zapewnić poprawne działanie integracji reklamowych.