Pro bezpečné povolení nahrávání souborů na vašem WordPress webu je klíčové definovat potřebné typy souborů na úrovni MIME, SVG soubory před nahráním vyčistit, omezit oprávnění k nahrávání na důvěryhodné uživatelské role a zároveň na straně serveru zabránit spouštění škodlivých souborů. Formát WEBP je v moderních verzích WordPressu většinou podporován přímo, zatímco SVG je kvůli možnosti obsahovat kód standardně blokován. Proces bezpečného nahrávání tedy není jen o povolení, ale také o minimalizaci rizik spojených s malwarem, falešnými příponami a neoprávněným přístupem.
SVG a WEBP jsou velmi cenné formáty z hlediska výkonu a designu. WEBP nabízí ve většině případů menší velikost oproti JPEG a PNG, což znamená rychlejší načítání stránky, lepší Core Web Vitals a nižší spotřebu dat. SVG zase poskytuje ostrý vzhled pro loga, ikony a vektorovou grafiku. Jelikož jsou SVG založené na XML, mohou ale obsahovat JavaScript, externí odkazy či škodlivé příkazy. Přeskakování bezpečnostních vrstev při povolení SVG v WordPressu může vést k vážnému ohrožení integrity webu i bezpečnosti návštěvníků.
V tomto průvodci najdete způsoby, jak bezpečně povolit nahrávání SVG a WEBP souborů na vašem WordPress webu – jaké nastavení upravit, rozdíly mezi pluginovým a kódovým řešením, opatření na straně serveru i praktický kontrolní seznam pro reálný provoz. Pokud váš web hodně pracuje s grafikou, je důležitá i spolehlivá infrastruktura. V tom vám pomůže stránka WordPress hosting s optimalizovanými zdroji pro WordPress.
Proč WordPress blokuje některé typy souborů?
WordPress Media Library z bezpečnostních důvodů nepřijímá všechny typy souborů. Výchozí podpora je pro běžné a relativně bezpečné formáty jako JPG, PNG, GIF, PDF nebo DOCX. Naopak formáty jako SVG jsou blokovány, protože i když přípona vypadá neškodně, soubor může obsahovat spustitelný kód či škodlivý obsah. Při pokusu o nahrání se zobrazí upozornění „Nemáte oprávnění nahrávat tento typ souboru“ – a to je základní bezpečnostní opatření.
Bezpečnost nahrávání souborů se skládá ze tří vrstev. První je kontrola MIME typu WordPressem, druhá je ověření oprávnění uživatele nahrát daný soubor a třetí je způsob, jakým server s nahraným souborem zachází. Pouhé přidání několika řádků do functions.php nevyřeší všechny tyto vrstvy – zejména SVG bez sanitizace může otevřít nový bezpečnostní průnik.
Co je MIME typ a proč je důležitý?
MIME typ je identifikátor, který říká prohlížeči a aplikacím, o jaký typ souboru se jedná. Pro WEBP je to obvykle image/webp, pro SVG pak image/svg+xml. WordPress kontroluje příponu i MIME typ a rozhoduje, zda je soubor povolený. Útočníci pak někdy zkoušejí přejmenovat škodlivý soubor s jinou příponou, proto nestačí spoléhat jen na příponu.
Výhody a rizika formátů SVG a WEBP
Oba formáty jsou užitečné pro webový výkon, ale bezpečnostní nároky se značně liší. WEBP je primárně o optimalizaci obrázků, SVG je kombinací vektorové grafiky a potenciálně škodlivého kódu, proto je potřeba k němu přistupovat opatrněji. Tabulka níže shrnuje klíčové benefity, rizika a doporučená bezpečnostní opatření pro každý formát.
| Formát | Hlavní výhoda | Hlavní riziko | Doporučené bezpečnostní opatření |
|---|---|---|---|
| WEBP | Menší soubory a rychlejší načítání oproti JPEG/PNG | Problémy se staršími servery nebo chybné MIME nastavení | Aktualizace WordPressu a PHP, využití pluginů pro optimalizaci obrázků |
| SVG | Neomezené škálování, ostrý vzhled log a ikon | XSS útoky, externí volání zdrojů, škodlivý XML obsah | Sanitizace SVG, omezení rolí pro nahrávání, blokování spouštění souborů ve složce s uploady |
| PNG | Podpora průhlednosti a široká kompatibilita | Velké soubory | Konverze na WEBP podle potřeby |
| JPEG | Široce používaný pro fotografie | Ztráta kvality při kompresi, velikost souboru | Nastavení kvality a lazy load (odložené načítání) |
Nejbezpečnější je používat WEBP pro fotografie a velké obrázky, a vyčištěné SVG pro loga a ikony. Nepovolujte SVG nahrávání všem uživatelům, ale jen správcům či důvěryhodným editorům. U vícero autorů, členství nebo zákaznických panelů je to ještě důležitější.
Co zkontrolovat před začátkem
Před změnou nastavení nahrávání na živém WordPress webu je vhodné se na proces připravit, aby bylo možné rychle vrátit zpět případné chyby. Zvláště u zásahů do souborů šablony je nezbytné mít zálohu. Doporučujeme provést následující kroky:
- Ujistěte se, že máte aktuální WordPress. Starší verze mohou mít odlišné chování při nahrávání souborů.
- Zkontrolujte, že používáte podporovanou a aktuální verzi PHP. Od roku 2026 jsou starší verze bezpečnostním rizikem.
- Zálohujte celý web včetně databáze, wp-content složky, šablon a pluginů.
- Používejte dětskou šablonu (child theme), aby se změny v functions.php neztratily při aktualizaci hlavní šablony.
- Omezte počet uživatelů s oprávněním nahrávat SVG na minimum.
- Pokud používáte bezpečnostní plugin nebo WAF, ujistěte se, že kontroly nahrávání souborů jsou aktivní.
Pro spolehlivý chod a zálohování je také důležitý kvalitní hosting s dostatečnými zdroji, izolací, automatickými zálohami a ochranou proti škodlivému softwaru. Řešení najdete například na Hostragons webhosting.
Způsob 1: Povolení SVG a WEBP pomocí pluginu
Pro uživatele s omezenými technickými znalostmi je nejbezpečnější začít s ověřeným a pravidelně aktualizovaným pluginem. Klíčové je ale neinstalovat jen jakýkoliv plugin, který „povolí SVG“, ale vybrat takový, který nabízí sanitizaci, omezení rolí a ověření souborů. Pouhé aktivování povolení SVG bez dalších opatření nestačí.
Na co dát pozor při výběru pluginu?
- Musí být pravidelně aktualizován, ideálně v posledním roce. Staré bezpečnostně zaměřené pluginy jsou rizikové.
- Dívejte se na počet aktivních instalací a recenze uživatelů.
- Plugin musí jasně uvádět podporu sanitizace SVG.
- Měl by umožnit povolit nahrávání pouze určitým rolím (např. adminům).
- Měl by být kompatibilní s aktuální verzí WordPressu.
- Neměl by zbytečně zatěžovat web nadbytečnými funkcemi.
WEBP je většinou podporován přímo novějšími WordPress instalacemi. Pokud se při nahrávání WEBP objeví chyba, spíše než plugin chybí správná konfigurace serveru, starší WordPress nebo nesprávně nastavené PHP/GD/Imagick. V takovém případě je vhodnější nejprve zkontrolovat systémové požadavky.
Postup bezpečného nastavení s pluginem
Ideální proces může vypadat takto: Nejdříve plugin nainstalujte a otestujte na testovacím prostředí, povolte pouze SVG a případně WEBP, aktivujte sanitizaci SVG, omezte nahrávání jen na administrátory a vyzkoušejte nahrání několika souborů – včetně bezpečného SVG i takového s vloženým skriptem. Pokud plugin škodlivý obsah odmítá nebo čistí, jste na dobré cestě.
Před nasazením na živý web vymažte cache a zkontrolujte správné zobrazování náhledů v knihovně médií. Pokud používáte CDN, ověřte, že nové typy souborů jsou správně servírovány s odpovídajícím MIME typem. Podrobnosti k CDN, SSL a správě zabezpečeného provozu najdete v SSL certifikát a Používání CDN.
Způsob 2: Přidání MIME typu pomocí kódu
Pro vývojáře je přidání MIME typů přes kód často flexibilnější a kontrolovatelnější. Nejčastější chybou ale je povolit SVG bez jakékoli sanitizace. Tento přístup je vhodný hlavně pro WEBP, který je bezpečnější, pro SVG je nutné doplnit další bezpečnostní vrstvy.
Jak funguje povolení přes functions.php
Pomocí filtru upload_mimes můžete do seznamu povolených typů přidat nové MIME typy. Například pro WEBP přidáte příponu webp s typem image/webp, u SVG příponu svg s image/svg+xml. Doporučuje se tyto úpravy dělat v dětské šabloně nebo ve vlastním malém pluginu, aby se změny neztratily při aktualizaci šablony.
Důležité je si uvědomit dvě věci: přidání MIME typu neznamená, že je soubor bezpečný; a úpravy v functions.php mohou být po aktualizaci přepsány. Proto je lepší řešit to pomocí samostatného pluginu.
Proč je nutné omezit nahrávání na konkrétní role?
Povolit SVG nahrávání všem uživatelům znamená velké bezpečnostní riziko, zejména u vícero autorů, e-shopů, členství nebo zákaznických systémů. Nejbezpečnější je umožnit to jen správcům a důvěryhodným editorům. Například na zpravodajském webu s 20 autory, kteří všichni mohou nahrávat SVG, stačí slabé heslo jednoho uživatele a celý web je ohrožen.
Ověřování rolí by mělo fungovat tak, že filtr nahrávání kontroluje uživatelské schopnosti a povoluje nahrávání jen u těch, kteří mají odpovídající oprávnění. Pokud chcete povolit i další role než administrátory, vytvořte si speciální roli a přiřaďte ji jen zkušeným uživatelům. Dvoufázové ověření pak dále snižuje riziko kompromitace účtu.
Bezpečnost SVG: Bez sanitizace neaktivovat
I když SVG vypadá jako jednoduchý obrázek, je založený na XML a může obsahovat skripty, event handlery, externí odkazy nebo skrytá data, která mohou být zneužita pro XSS útoky. XSS znamená, že škodlivý kód běží v prohlížeči návštěvníka, což může vést ke krádeži cookies, převzetí sezení nebo podvodným formulářům.
Bezpečné používání SVG vyžaduje, aby soubory byly před nahráním exportovány z designového nástroje s odstraněním nepotřebných metadat a aby WordPress provedl sanitizaci – tedy odstranění skriptů, tagů foreignObject, nebezpečných atributů a externích odkazů. Tento proces nesmí být ruční, ale měl by probíhat automaticky pomocí pravidel.
Kontrolní seznam bezpečného SVG
- Získávejte SVG soubory pouze z důvěryhodných zdrojů.
- Před nahráním optimalizujte soubory a vyčistěte metadata.
- Používejte pluginy nebo knihovny, které podporují automatickou sanitizaci SVG.
- Nepovolujte nahrávání SVG všem uživatelům.
- Kontrolujte, zda nahrané SVG nevolají externí URL.
- Pravidelně mažte staré nebo nepoužívané SVG soubory v médiích.
- Aktivujte ve vašem bezpečnostním pluginu sledování změn souborů.
Ve firemních webech slouží SVG obvykle pro loga, ikony sociálních sítí, platebních metod a prvků uživatelského rozhraní. Protože se tyto soubory často nemění, nejbezpečnější je nahrát jen schválenou sadu SVG a po té opět omezit povolení nahrávání.
Nastavení WEBP a tipy na výkon

WEBP je formát zaměřený hlavně na výkon. Nesprávná konfigurace serveru ale může způsobit, že se WEBP soubory nezobrazí správně, nebo budou odesílány s nevhodným MIME typem. WordPress od verze 5.8 podporuje WEBP, ale knihovny GD nebo Imagick na serveru musí také tento formát umět zpracovat.
Při používání WEBP je cílem nejen povolit nahrávání, ale nastavit strategii optimalizace. Například omezit velikost velkých obrázků na max. 1920 px na šířku, kvalitu nastavit mezi 75–85 % a využívat lazy loading. WEBP výrazně zrychluje načítání produktových fotek, blogových titulků a bannerů, což má přímý vliv na konverze, zejména na mobilních zařízeních.
Praktické tipy pro WEBP
- Archivujte originální obrázky, abyste mohli kdykoli přejít zpět k PNG nebo JPEG.
- Pro malé ikony je často lepší SVG než WEBP.
- Na stránkách s mnoha fotografiemi lze díky WEBP snížit celkovou velikost o 25–50 %.
- Pokud používáte CDN, ověřte správné servírování WEBP variant.
- Podpora ve většině prohlížečů je nyní široká, ale pro starší systémy si připravte záložní řešení.
Pro weby zaměřené na výkon je důležitý i hosting – rychlý CPU, diskové I/O a technologie jako LiteSpeed mohou výrazně zlepšit rychlost načítání médií. Více se dozvíte na LiteSpeed Hosting a v Průvodce zrychlení WordPressu.
Bezpečnostní opatření na straně serveru
Správné nastavení ve WordPressu je nezbytné, ale bez zabezpečení serveru riziko přetrvává. Složka wp-content/uploads slouží k ukládání mediálních souborů, ale neměla by umožňovat spouštění PHP nebo jiných spustitelných souborů. To výrazně snižuje riziko, že by útočník nahrál škodlivý skript a spustil ho.
Na Apache serverech lze omezit spouštění PHP ve složce uploads pomocí .htaccess pravidel, na Nginx pak blokovat PHP spouštění v příslušných lokacích. U sdílených hostingů tyto nastavení často spravuje poskytovatel. Kvalitní a bezpečně nastavený hosting je základním kamenem bezpečnosti nahrávání souborů ve WordPressu.
Doplňkové kontroly na serveru
- Správně nastavte oprávnění souborů a složek – složky 755, soubory 644.
- Zamezte zápisu do wp-config.php a dalších klíčových systémových souborů.
- Aktivujte ModSecurity nebo podobný WAF (web application firewall).
- Pravidelně kontrolujte logy serveru a sledujte podezřelé pokusy o nahrání souborů.
- Nastavte automatické zálohy webu denně nebo týdně.
- Šifrujte přístup do administrace a mediálního nahrávání pomocí SSL.
Pro agentury a firmy je výhodné mít správu domény, SSL certifikátu i hostingu na jednom místě, což usnadňuje provoz. Pokud plánujete nový projekt, podívejte se na Dotaz na doménu a SSL certifikát.
Nejbezpečnější postup krok za krokem
Následující postup představuje bezpečnou a praktickou cestu pro většinu WordPress webů. Zajišťuje technickou kontrolu i minimalizaci rizik:
- 1. Vytvořte úplnou zálohu a pokud je to možné, používejte staging prostředí.
- 2. Aktualizujte WordPress, šablony, pluginy a PHP.
- 3. Pokud máte problémy s WEBP, nejdříve zkontrolujte podporu serveru a případně přidejte MIME typ.
- 4. Pro SVG používejte plugin s podporou sanitizace nebo si vytvořte vlastní bezpečné řešení.
- 5. Povolení SVG omezte pouze na správce nebo speciální důvěryhodnou roli.
- 6. Zakážete spouštění souborů ve složce wp-content/uploads.
- 7. Otestujte sanitizaci SVG na testovacích souborech.
- 8. Proveďte testy CDN, cache a kompatibility prohlížečů.
- 9. Po nasazení sledujte logy a bezpečnostní záznamy minimálně 24–48 hodin.
Pokud tyto kroky dodržíte, váš přístup k nahrávání souborů ve WordPressu nebude jen prostý systém přijímání souborů, ale stane se kontrolovaným, bezpečným a udržitelným procesem správy médií.
Časté chyby při povolování SVG a WEBP
Většina chyb pramení z nesprávného nastavení rovnováhy mezi bezpečností a pohodlím. Nejčastěji se uživatelé spokojí s krátkým kódem z internetu vloženým do functions.php, což u SVG není dostačující.
- Povolení SVG bez sanitizace.
- Povolení nahrávání všem uživatelským rolím.
- Používání zastaralých a neaktualizovaných MIME pluginů.
- Úprava šablon bez zálohy na živém webu.
- Neblokování spustitelných souborů ve složce uploadů na serveru.
- Řešení WEBP chyb jen pluginem bez kontroly serveru.
- Ignorování sledování bezpečnostních logů po nahrání souborů.
Vliv na SEO a uživatelskou zkušenost
Správně nastavené SVG a WEBP má výrazný pozitivní dopad na SEO. WEBP snižuje velikost stránek a tím zlepšuje metriky jako Largest Contentful Paint. SVG umožňuje ostré ikony a loga, což zvyšuje vizuální kvalitu rozhraní. Naopak slabá bezpečnostní politika může SEO poškodit – malware může vést k zablokování webu ve vyhledávačích, ztrátě důvěry uživatelů a poklesu organické návštěvnosti.
Nejlepší výsledky dosáhnete kombinací výkonu a bezpečnosti: optimalizujte obrázky, povolujte jen nezbytné formáty a pravidelně web udržujte. Další rady najdete v Průvodce bezpečností WordPress a Údržba webových stránek.
Závěr
Cílem bezpečného povolení nahrávání souborů ve WordPressu je využívat moderní formáty jako SVG a WEBP bez zbytečného vystavení webu rizikům. WEBP je většinou bezpečný a doporučuje se pro výkon, SVG musí být vždy doprovázeno sanitizací, omezením rolí a opatřeními na serveru. Místo rychlého přidání MIME typu je nejlepší dodržovat komplexní proces zahrnující zálohování, testy, autorizaci a monitoring.
Pokud plánujete spolehlivý, rychlý a bezpečný WordPress web na infrastruktuře Hostragons, podívejte se na jejich nabídku WordPress hosting, kde si můžete pohodlně vybrat hosting, doménu i SSL bez zbytečného tlaku na prodej.
Často kladené otázky
Proč WordPress standardně nepovoluje nahrávání SVG?
SVG jsou založená na XML a mohou obsahovat JavaScript, externí odkazy či škodlivý kód. WordPress proto kvůli bezpečnosti blokuje SVG, aby minimalizoval riziko XSS útoků.
Nemohu nahrát WEBP, je problém ve WordPressu nebo na serveru?
WordPress od verze 5.8 WEBP podporuje, ale pokud server nemá správně nastavené PHP, GD nebo Imagick knihovny s podporou WEBP, může dojít k chybám. Nejprve proto zkontrolujte verzi WordPressu a poté serverovou konfiguraci.
Je bezpečné povolit SVG přes functions.php?
Samo o sobě ne. Přidání MIME typu v functions.php pouze odstraní blokaci, ale nevyčistí obsah SVG. Pro bezpečné použití je nutná sanitizace, omezení rolí a ochrana na serveru.
Kterým uživatelům dát oprávnění nahrávat SVG?
Nejbezpečnější je povolit SVG pouze správcům nebo speciálně vybraným důvěryhodným editorům. U vícero autorů by měli ostatní toto oprávnění nemít, protože by mohli neúmyslně ohrozit celý web.
Zlepšuje WEBP SEO výkon?
Ano, díky menší velikosti souborů zrychluje načítání webu, což pozitivně ovlivňuje Core Web Vitals a tím i SEO výsledky.