Otevřete registraci 21
Nadcházející událost: Podívejte se, jak mohou naše obchodní možnosti pomoci vaší firmě přizpůsobit se měnícímu se prostředí na GoDaddy Open 2021 28. září.
Vítejte v našem výukovém programu .htaccess! .htaccess je malý, ale výkonný prostý textový soubor, který můžete použít k provádění změn konfigurace Apache na bázi jednotlivých adresářů. Funguje jako prostředník mezi vámi a webovým serverem Apache.
Naučte se upravovat soubor .htaccess a budete mít možnost nasměrovat své uživatele na správnou stránku, přechytračit hackery a provádět úpravy ke zvýšení výkonu vašeho webu.
Úpravou souboru .htaccess můžete provést změny v chování svých webových stránek, které by jinak vyžadovaly vyšší úrovně přístupu, než jaké může nabízet váš hostingový účet.
Tento tutoriál .htaccess vysvětlí, jak využít sílu .htaccess k provádění běžných úkolů. Některé z kouzel, kterých může dosáhnout, zahrnují:
Přesměrování a přepisování URL — Ujistěte se, že se vaši uživatelé dostanou přesně tam, kam chcete. Zabezpečení — Omezte přístup k určitým souborům nebo adresářům nebo zablokujte nežádoucí přístup z vašeho webu. Optimalizace webu — Přidejte vylepšení, která zvýší výkon webu.Nyní pojďme přejděte do našeho výukového programu .htaccess.
Soubor .htaccess se nejčastěji nachází v kořenovém adresáři webu, který ovládá. Odtud to ovlivní všechny podsložky na webu.
Můžete však také umístit soubor .htaccess do konkrétního podadresáře níže ve struktuře vašeho webu. To je užitečné, pokud chcete ovlivnit pouze část svého webu, protože soubor ovlivní pouze adresář, ve kterém se nachází, a adresáře pod ním.
Je přípustné mít na webu více souborů .htaccess, ačkoli webmasteři pro snadnou údržbu často používají k provedení všech nezbytných změn jeden soubor umístěný v kořenovém adresáři webu.
K úpravě .htaccess lze použít jakýkoli textový editor, včetně toho, který je integrován do Správce souborů cPanel. Je to pohodlný způsob úpravy souborů .htaccess.
1. Přihlaste se do cPanel.2. V části Soubory klikněte na ikonu Správce souborů.
3. Ve vyskakovacím okně vyberte kořen dokumentu pro web, na kterém pracujete, a ujistěte se, že je zaškrtnuto Zobrazit skryté soubory. Všimněte si, že některé verze Správce souborů mohou mít mírně odlišné rozhraní, ale budou vyžadovat stejné výběry nastavení. Pokud se níže uvedené okno po kliknutí na Správce souborů automaticky nezobrazí, vyhledejte ikonu Nastavení a kliknutím na ni přejděte k těmto nastavením.
4. Vyhledejte soubor .htaccess a klikněte na něj pravým tlačítkem. Z rozbalovací nabídky, která se zobrazí, vyberte Upravit.
5. Nyní budete v textovém editoru, kde můžete provádět a ukládat změny.
Související: cPanel tipy a triky, které vám usnadní život
Nezapomeňte si vytvořit zálohu.Pokud svůj soubor .htaccess pokazíte, můžete svůj web snadno zničit, proto si nejprve vytvořte zálohu. Pokud se vám web zhroutí a z nějakého důvodu nemáte zálohu, nepropadejte panice – jednoduše přejmenujte .htaccess na .htaccess.old a tím by se měl vrátit zpět.
K čemu slouží tečka na začátku názvu souboru?Tečka na začátku názvu souboru říká systémům Unix/Linux, aby tento soubor skryly, takže při použití správce souborů nezapomeňte zaškrtnout políčko „zobrazit skryté soubory “ nebo ji možná nebudete schopni najít.
Někdy je potřeba uživatele přesměrovat na jinou stránku, než na kterou odkazovali ze svého webového prohlížeče. Možná, že tato stránka již neexistuje, nebo je možná chcete přesměrovat z jiné než WWW URL na WWW URL. Zde přichází na řadu přesměrování a přepisování.
Všimněte si, že mnoho z těchto příkladů začíná direktivou RewriteEngine on. Toto stačí použít pouze jednou a od té doby bude v souboru platit, pokud jej nevypnete.
Vynutit WWW nebo jiné než WWW pomocí .htaccessPro optimalizaci pro vyhledávače se často doporučuje striktně držet WWW nebo jiné verze vašeho webu, abyste dosáhli silnější přítomnosti ve vyhledávači. Chcete-li toho dosáhnout, přidejte následující řádky (nezapomeňte změnit example.com na název svého webu):
#Force WWWRewriteEngine onRewriteCond %{HTTP_HOST} ^example.com [NC]RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]Vynutit HTTPSPoužijte k přesměrovat URL bez HTTPS na požadavek HTTPS:
#Force WWWRewriteEngine onRewriteCond %{HTTP_HOST} ^example.com [NC]RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]Vynutit koncové lomítkoPoužít toto přesměrování adres URL, které neobsahují koncové lomítko, na stejné adresy URL s koncovým lomítkem (tj. z http://example.com/nejakastranka na http://example.com/nejakastranka/):
RewriteEngine onRewriteCond %{REQUEST_URI} /+[^\.]+$RewriteRule ^(.+[^/])$ %{REQUEST_URI}/ [R=301,L]Odstranit koncové lomítkoChcete-li odstranit koncová lomítka, použij toto:
RewriteEngine onRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)/$ /$1 [R=301,L]Přesměrování jedné stránkyAutomaticky jednu adresu URL na jinou adresu URL:
RewriteEngine onRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)/$ /$1 [R=301,L]Přesměrujte celý web na novou doménuPokud svůj web přesouváte do nové domény, ale všechny odkazy jinak zůstanou stejné, můžete to udělat na staré doméně:
RewriteEngine onRewriteCond %{HTTP_HOST} ^OldDomain.comRewriteRule ^(.*) http://NewDomain.com/$1 [P]Alias pro „čisté“ adresy URLPřidejte tyto řádky, pokud chcete používat „čisté“ adresy URL – tj. http://example.com/articles místo http://example.com/articles.php (v příkladu nahraďte .php příponou, kterou chcete odstranit):
RewriteEngine onRewriteCond %{SCRIPT_FILENAME} !-dRewriteRule ^([^.]+)$ $1.php [NC,L].htaccess lze použít k ochraně jednotlivých souborů nebo celý adresář úplným odmítnutím přístupu nebo vyžadováním hesla. Můžete také zablokovat tyto záludné hotlinkery a zabránit jim v používání vaší šířky pásma.
Ochrana jednoho souboru heslemChcete-li chránit heslem jeden soubor v jinak veřejné složce, musíte nejprve vytvořit soubor .htpasswd obsahující uživatelské jméno a šifrované heslo pro povolená přihlášení.
Snadný způsob, jak toho dosáhnout, je použít bezplatný nástroj pro webmastery, jako je ten na 4WebHelp. Jakmile uložíte soubor .htpasswd do vašeho systému, můžete s ním používat .htaccess. Zde je kompletní postup:
1. Pomocí nástroje pro webmastery vytvořte kombinaci uživatelské jméno:šifrované_heslo. Vytvořený řádek bude vypadat asi takto: User_Name:14fcYjcLcsbMU Zkopírujte výsledný řádek a uložte jej do textového editoru.2. Přihlaste se do cPanel a v části Soubory klikněte na Správce souborů.
3. Ve vyskakovacím okně vyberte domovský adresář a ujistěte se, že je vybrána možnost Zobrazit skryté soubory. Zde umístíte soubor .htpasswd. Toto umístění je před veřejností skryté a není přístupné prostřednictvím adresy URL, takže je bezpečnější.
4. Nyní jste ve svém domovském adresáři. Kliknutím na odkaz +Soubor v levém horním rohu vytvoříte nový soubor. Ve vyskakovacím okně zadejte jako název souboru .htpasswd a klikněte na Vytvořit nový soubor. Nechte druhý řádek prázdný. Výchozí nastavení bude aktuální, domovský adresář.
5. Zobrazí se seznam vašeho domovského adresáře. Poznamenejte si cestu zobrazenou v levém podokně správce souborů, protože ji budete později potřebovat. Bude to něco jako /home/username. Přejděte dolů, dokud nenajdete soubor, který jste právě vytvořili, a klikněte na něj pravým tlačítkem. (Pokud nevidíte žádné soubory začínající tečkou, pravděpodobně jste nezvolili možnost „zobrazit skryté soubory“ – můžete to opravit kliknutím na ikonu nastavení a tam.)
6. Otevře se editor souborů. Vložte řádek, který jste uložili z šifrovače hesel, do nového souboru a uložte jej. Poté jste připraveni přejít k úpravám .htaccess.7. Přidejte následující do souboru .htaccess pomocí postupu popsaného na začátku tohoto článku. Nahraďte /home/username cestou, kterou jste si poznamenali dříve. Nahraďte mypage.html názvem stránky, kterou chcete chránit heslem. Můžete také změnit „Vyžadováno přihlášení“ na něco jiného, například „Členská oblast“ – toto se zobrazí ve výzvě k přihlášení.
AuthUserFile /home/username/.htpasswdAuthName "Vyžadováno přihlášení"AuthType basicRequire valid-user8. Klikněte na Uložit změny. Poté navštivte svůj web a pokuste se získat přístup k souboru, abyste ověřili, že ochrana funguje. Pokud stránku navštívíte podruhé, nemusíte být vyzváni k přihlášení, protože váš prohlížeč si to pravděpodobně zapamatuje.
Související: Jak používat Bing Webmaster Tools ke zlepšení SEO vašeho webu
Ochrana adresáře heslemPostup pro ochranu celého adresáře heslem je podobný jako pro ochranu souboru:
Vytvořte soubor .htpasswd, jak je popsáno v položce výše, Ochrana jednoho souboru heslem. Po kroku 6 zastavte před provedením jakýchkoli změn v .htaccess. Vytvořte nový soubor .htaccess v podadresáři, který chcete chránit, a přidejte následující řádky:AuthUserFile /home/username/.htpasswdAuthName "Vyžadováno přihlášení"AuthType basicRequire valid-user< p>Všimněte si, že můžete také chránit adresář pomocí cPanel, bez použití .htaccess.Odepřít přístup k jednomu souboruChcete-li všem uživatelům zabránit v přístupu k určitému souboru, přidejte následující řádky a nahraďte název souboru názvem souboru, který chcete chránit:
order allow,denydeny from all Odepřít přístup ke skrytým souborům a adresářůmTímto způsobem zabráníte hackerům v přímém přístupu k souborům, které by měly zůstat skryté – tedy k těm, které začínají tečkou. Tyto řádky poskytnou hackerovi chybu 404 nenalezen, nikoli přístup odepřen, takže hacker nebude mít žádné vodítko.
RedirectMatch 404 /\..*$Block image hotlinkingZabraňte lidem krást vaši šířku pásma odkazem na vaše obrázky:
RewriteEngine onRewriteCond %{HTTP_REFERER} !^$RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]Můžete také upravit výše uvedený obrázek tak, aby se místo toho, který je hotlinkem, zobrazil alternativní obrázek, obvykle ten, který říká něco jako „Není povoleno žádné hotlinking!“ Chcete-li to provést, změňte poslední řádek na tento:
RewriteRule \.(jpg|jpeg|png|gif)$ http://www.yourdomain.com/no-hotlinking.jpg [R,L]Dále v našem kurzu .htaccess: Použití .htaccess ke zlepšení výkonu webu. S ním můžete povolit kompresi souborů a mít určitou kontrolu nad ukládáním do mezipaměti, což může podstatně zrychlit váš web.
Komprimujte textové soubory pomocí gzip/deflátModul Apache mod_deflát může komprimovat data pomocí komprese gzip před jejich odesláním uživateli. To může snížit množství šířky pásma, kterou váš web používá, i když to nutně nezrychlí váš web. Modul je již povolen na většině serverů, ale abyste jej mohli skutečně používat, budete muset přidat řádek níže:
AddOutputFilterByType DEFLATE text/text text/html text/prostý text/xml text/css aplikace/x-javascript application/javascriptSet vyprší platnost záhlavíUkládání do mezipaměti prohlížeče výrazně zrychluje váš web. Abyste toho mohli využít, musíte pro každý typ souboru, který chcete uložit do mezipaměti, nastavit datum vypršení platnosti. Použijte níže uvedený kód jako výchozí bod. Pro každou položku můžete nastavit dobu trvání mezipaměti pomocí všech standardních časových jednotek, včetně let, měsíců, týdnů, dnů, hodin, minut a sekund.
ExpiresActive OnExpiresByType image/jpg "access plus 1 year"ExpiresByType image/jpeg "access plus 1 year"ExpiresByType image/gif "access plus 1 year"ExpiresByType image/png "access plus 1 year"ExpiresByTypeaccess text/cs Přístup „Application ApplicationsByType Application/PDF“ Plus 1 měsíc “Text/X-Javascript„ Access 1 Month “Application Application Application Application Application Application/X-Icon“ Plus 1 Year EXPIRESDEFEF "access plus 2 days"Omezit velikost nahrávaných souborůChcete-li uživatelům zabránit v nahrávání velkých souborů, které zatěžují zdroje, omezte velikost nahrávaných souborů pomocí .htaccess. Zadejte limit velikosti v bajtech.
LimitRequestBody 1048576Související: Zrychlení WordPressu pomocí memcached a W3 Total Cache
Zde je několik dalších užitečných věcí, které můžete dělat s .htaccess:
Změnit výchozí stránku indexuVe výchozím nastavení se váš server pokusí zobrazit index.htm, poté index.html, poté index.php a poté default.htm jako první stránku vašeho webu. Toto můžete přepsat a nastavit výchozí indexovou stránku následovně (nahraďte first.html stránkou, kterou chcete zobrazit):
#Set default index pageDirectoryIndex first.htmlMůžete sem také přidat celý seznam, který bude server procházet v pořadí, dokud nenajde ten, který může poskytnout.
#Set default index pagesDirectoryIndex index.php index.htm index.html home.htmlZměna časového pásma serveruNastavte časové pásmo serveru na cokoliv chcete. Níže uvedený kód nastavuje server na newyorský čas. Praktický seznam časových pásem najdete zde.
#Set server time zoneSetEnv TZ America/New_YorkCustom chybové zprávy a stránkyZměnu zpracování chyb je velmi snadné pomocí direktivy ErrorDocument. Můžete zadat zprávu nebo přesměrovat do souboru. Níže se zobrazí stránka s názvem 404.html, když je vyvolána chyba „stránka nenalezena“:
ErrorDocument 404 /404.htmlMůžete také přímo použít text, jako je tento (všimněte si, že zpráva je uzavřena v uvozovkách):
ErrorDocument 404 „Jejda, tato stránka nebyla nalezena. Chybu jsme zaznamenali a prověříme ji."
Můžete také přidat řádky pro jiné kódy chyb serveru. Zde je několik dalších příkladů:
ErrorDocument 403 "Je nám líto, nemáte k tomu přístup." ErrorDocument 404 /404.phpErrorDocument 500 "Jejda! Na našem serveru došlo k chybě. Zkuste to znovu později."Seznam kódů chyb serveru naleznete zde.
Výše uvedené příklady pokrývají nejběžnější použití .htaccess, ale je jich ještě více. Zde jsou některé další cheaty .htaccess z celého webu:
I když .htaccess nabízí výkonný a poměrně jednoduchý způsob interakce s Apache, některé z těchto změn lze provést také prostřednictvím rozhraní cPanel. V těchto případech je zvolená trasa záležitostí osobních preferencí.
Bavte se a nezapomeňte si pro jistotu zálohovat svůj původní soubor .htaccess.
Postavili jsme The Hub od GoDaddy Pro, abychom vám ušetřili čas. Spousty času. Naši členové uvádějí, že každý měsíc ušetří průměrně tři hodiny na každém klientském webu, který spravují. Jste připraveni vzít si takový čas zpět?
Zaregistrujte se zdarma
Obrázek: Christin Hume na Unsplash