Portál AbcLinuxu, 13. května 2025 21:45

Dotaz: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess

20.4.2012 15:54 Veronika Lipská
PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
Přečteno: 318×
Odpovědět | Admin

Dobré odpoledne...

Co bych potřebovala

Potřebovala bych poradit, jak pomocí souboru .htaccess uloženého v požadovaném adresáři zakázat spuštění souborů php. Pravidlo potřebuji aplikovat na adresář ve kterém je soubor .htaccess uložen včetně jeho všech podadresářů.

K čemu to potřebuji

Mám na serveru upload obrázků a pokud by někdo nějakým způsobem uložil místo obrázku soubor php, chci zabránit spuštění jeho obsahu.

Pokud by někdo věděl, prosím o pomoc, děkuji a přeji krásný den. V.L.


Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

pavlix avatar 20.4.2012 17:07 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
Odpovědět | | Sbalit | Link | Blokovat | Admin
RewriteEngine on
RewriteRule \.php$ - [F]
Vysvětlení: První řádek zapne zpracování rewrite (ještě musí být mod_rewrite aktivovaný na serveru). Druhý se aplikuje na název souboru, který končí .php (\ je tam pro potlačení speciálního významu tečky, dolar má naopak speciální význam konce toho názvu). Pomlčka značí prázdné url, [F] značí 403 Forbidden.

Snad je to správně. Jinak je lepší to ošetřit už při tom ukládání, pokud to jde. Bacha, aby dotyčný nemohl uložit, přepsat či smazat .htaccess.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
Jendа avatar 20.4.2012 21:32 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
Jen pro inspiraci (nevím, jestli se to vztahuje na tento konrétní případ) - k rozlišování souborů podle \.přípona$:
When you use AddHandler, you are telling Apache that “execute this as php” is one possible way to handle .php files. But! Apache doesn’t have the same idea of file extensions that every human being on the planet does. It’s designed to support, say, index.html.en being recognized as both English and HTML. To Apache, a file can have any number of file extensions simultaneously. Imagine you have a file upload form that dumps files into some public directory. To make sure nobody uploads PHP files, you just check that they don’t have a .php extension. All an attacker has to do is upload a file named foo.php.txt; your uploader won’t see a problem, but Apache will recognize it as PHP, and it will happily execute.
pavlix avatar 20.4.2012 22:46 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
Jasně, díky za upozornění, proto bych taky v daném případě nechal nahrávat soubory s jednou příponou z pevně daného seznamu.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
21.4.2012 10:19 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
Název souboru je při uploadu volitelný. Takže já bych na název souboru dodaný uživatelem/prohlížečem vůbec nespoléhal, a soubory bych si kompletně pojmenoval po svém -- třeba podle ID v databázi + přípona dle obsahu. Jméno případně poskytnuté prohlížečem si pak můžu poznamenat někam do databáze a zobrazovat je uživatelům jako alternativu k vytvořenému jménu.
21.4.2012 11:13 Kit
Rozbalit Rozbalit vše Re: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
Pro určité typy souborů (např. zdrojáky, náhledy fotek,...) by mohlo být zajímavé i kompletní ukládání obsahu do databáze.
Řešení 1× (camel1cz)
20.4.2012 21:44 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ty věci mod_rewrite můžete taky, ale hlavně bych tam připsal:
RemoveHandler .php .phtml .php3
RemoveType .php .phtml .php3
php_flag engine off
Každý řádek de-facto, dělá to co požadujete, PHP zdroják se pak normálně zobrazí jako běžný text.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
pavlix avatar 20.4.2012 22:46 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
S tím, že jestli to dobře chápu, tak by měl stačit kterýkoli jeden z těch tří řádků. Třetí vypadá nejjednodušeji.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
21.4.2012 00:10 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: PHP - Pomoc s vytvoření ochrany souborů s příponou php pomocí souboru .htaccess
Měl by stačit poslední „sympatický“, předchozí dva (pravděpodobně,) zafungují jen při konkrétním režimu. Ony ty tři řádky dohromady jsou takové: „zakážu vše co můžu“.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.