{"id":6282,"date":"2018-08-14T13:04:03","date_gmt":"2018-08-14T11:04:03","guid":{"rendered":"https:\/\/nprofit.net\/pl\/?page_id=6282"},"modified":"2025-12-16T10:47:23","modified_gmt":"2025-12-16T09:47:23","slug":"htaccess-seo","status":"publish","type":"post","link":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/","title":{"rendered":"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO"},"content":{"rendered":"\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_81 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Spis tre\u015bci<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Prze\u0142\u0105cznik Spisu Tre\u015bci\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #003366;color:#003366\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #003366;color:#003366\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#Kompendium_wiedzy_o_htaccess_przekierowania_zabezpieczenia_SSL_SEO\" >Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-2\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#1_Czym_jest_htaccess\" >1. Czym jest .htaccess?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-3\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#2_Jak_stworzyc_plik_htaccess\" >2. Jak stworzy\u0107 plik .htaccess?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-4\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#3_Do_czego_sluzy\" >3. Do czego s\u0142u\u017cy?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-5\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#4_Przykladowa_zawartosc_pliku\" >4. Przyk\u0142adowa zawarto\u015b\u0107 pliku<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-6\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#5_Popularne_przekierowania_w_htaccess\" >5. Popularne przekierowania w .htaccess<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-7\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#6_Wlasna_strona_bledu\" >6. W\u0142asna strona b\u0142\u0119du<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-8\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#7_Blokowanie_okreslonych_adresow_IP\" >7. Blokowanie okre\u015blonych adres\u00f3w IP<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-9\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#8_Blokowanie_uzytkownikow_na_podstawie_strony_odsylajacej\" >8. Blokowanie u\u017cytkownik\u00f3w na podstawie strony odsy\u0142aj\u0105cej<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-10\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#9_Zatrzymanie_hotlinkow\" >9. Zatrzymanie hotlink\u00f3w<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-11\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#10_Blokowanie_witryny_przed_botami\" >10. Blokowanie witryny przed botami<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-12\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#11_Ustawienie_domyslnej_strony_glownej_lub_folderu\" >11. Ustawienie domy\u015blnej strony g\u0142\u00f3wnej lub folderu<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-13\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#12_Ochrona_za_pomoca_hasla\" >12. Ochrona za pomoc\u0105 has\u0142a<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-14\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#13_Blokada_popularnych_prob_wlamania_w_systemie_WordPress\" >13. Blokada popularnych pr\u00f3b w\u0142amania w systemie WordPress<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-15\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-30\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#14_Zlozone_przekierowania_z_uzyciem_wyrazen_regularnych\" >14. Z\u0142o\u017cone przekierowania z u\u017cyciem wyra\u017ce\u0144 regularnych<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-31\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#i-16\" >&nbsp;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-32\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#Dokumentacja\" >Dokumentacja<\/a><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h1><span class=\"ez-toc-section\" id=\"Kompendium_wiedzy_o_htaccess_przekierowania_zabezpieczenia_SSL_SEO\"><\/span>Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO<span class=\"ez-toc-section-end\"><\/span><\/h1>\n<h3><span class=\"ez-toc-section\" id=\"i\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"col-md-6\">\n<div style=\"padding: 15px; display: table; border: 1px solid #a2a9b1;\" align=\"left\"><center><strong>Spis tre\u015bci<\/strong><\/center><br \/>\n1. <a href=\"#1\">Czym jest .htaccess?<\/a><br \/>\n2. <a href=\"#2\">Jak stworzy\u0107 plik .htaccess?<\/a><br \/>\n3. <a href=\"#3\">Do czego s\u0142u\u017cy?<\/a><br \/>\n4. <a href=\"#4\">Przyk\u0142adowa zawarto\u015b\u0107 pliku<\/a><br \/>\n5. <a href=\"#5\">Popularne przekierowania w .htaccess<\/a><br \/>\n&nbsp;&nbsp;&nbsp;5.1. <a href=\"#5-1\">Przekierowanie 301<\/a><br \/>\n&nbsp;&nbsp;&nbsp;5.2. <a href=\"#5-2\">Wymuszenie HTTPS w adresie URL domeny<\/a><br \/>\n&nbsp;&nbsp;&nbsp;5.3. <a href=\"#5-3\">Wymuszenie przedrostka www adresie URL domeny<\/a><br \/>\n&nbsp;&nbsp;&nbsp;5.4. <a href=\"#5-4\">Wymuszenie adresu URL bez przedrostka www<\/a><br \/>\n&nbsp;&nbsp;&nbsp;5.5. <a href=\"#5-5\">Przekierowanie ca\u0142ej domeny na now\u0105<\/a><br \/>\n6. <a href=\"#6\">W\u0142asna strona b\u0142\u0119du<\/a><br \/>\n7. <a href=\"#7\">Blokowanie adres\u00f3w IP<\/a><br \/>\n&nbsp;&nbsp;&nbsp;7.1. <a href=\"#7-1\">Blokada wszystkich adres\u00f3w IP<\/a><br \/>\n&nbsp;&nbsp;&nbsp;7.2. <a href=\"#7-2\">Blokada wszystkich adres\u00f3w IP z wyj\u0105tkiem zdefiniowanych<\/a><br \/>\n&nbsp;&nbsp;&nbsp;7.3. <a href=\"#7-3\">Blokada wybranych adres\u00f3w IP<\/a><br \/>\n8. <a href=\"#8\">Blokowanie u\u017cytkownik\u00f3w na podstawie strony odsy\u0142aj\u0105cej<\/a><br \/>\n9. <a href=\"#9\">Zatrzymanie hotlink\u00f3w<\/a><br \/>\n10. <a href=\"#10\">Blokowanie bot\u00f3w<\/a><br \/>\n11. <a href=\"#11\">Ustawienie domy\u015blnej strony g\u0142\u00f3wnej lub folderu<\/a><br \/>\n12. <a href=\"#12\">Ochrona za pomoc\u0105 has\u0142a<\/a><br \/>\n13. <a href=\"#13\">Blokada popularnych pr\u00f3b w\u0142amania w systemie WordPress<\/a><br \/>\n14. <a href=\"#14\">Z\u0142o\u017cone przekierowania z u\u017cyciem wyra\u017ce\u0144 regularnych<\/a><\/div>\n<\/div>\n<div class=\"col-md-6\">\n<div style=\"display: table; border: 1px solid #a2a9b1;\" align=\"left\"><center><strong>Najcz\u0119\u015bciej u\u017cywane<\/strong><\/center><\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\nRewriteBase \/<\/code><\/p>\n<p><code># wymuszenie wersji bez www<br \/>\nRewriteCond %{HTTP_HOST} ^www\\.domena\\.pl [NC]<br \/>\nRewriteRule ^(.*)$ https:\/\/domena.pl\/$1 [L,R=301]<\/code><\/p>\n<p><code># wymuszenie wersji https<br \/>\nRewriteCond %{HTTPS} !=on<br \/>\nRewriteRule .* https:\/\/%{SERVER_NAME}%{REQUEST_URI} [R,L]<\/code><\/p>\n<p><code># przekierowanie podstrony<br \/>\nRedirect 301 \/podstrona https:\/\/domena.pl\/podstrona2<\/code><\/p>\n<p><code># wy\u0142\u0105czenie hotlink\u00f3w<br \/>\nRewriteCond %{HTTP_REFERER} !^$<br \/>\nRewriteCond %{HTTP_REFERER} !^http:\/\/(subdomena\\.)?domena\\.pl\/.*$ [NC]<br \/>\nRewriteRule ^.*\\.(bmp|tif|gif|jpg|jpeg|jpe|png)$ http:\/\/www.nooooooooooooooo.com\/ [F]<\/code><\/p><\/blockquote>\n<\/div>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"i-2\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"1\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"1_Czym_jest_htaccess\"><\/span>1. Czym jest .htaccess?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>.htaccess to plik konfiguracyjny znajduj\u0105cy si\u0119 na serwerze z oprogramowaniem Apache Web Server. Je\u015bli istnieje w katalogu g\u0142\u00f3wnym, jest wykrywany i wykonywany przez oprogramowanie przed wykonaniem jakichkolwiek skrypt\u00f3w &#8211; zarz\u0105dza docieraniem do adres\u00f3w, a jego najwa\u017cniejsza funkcja to konfigurowanie zestaw\u00f3w przekierowa\u0144.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-3\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"2\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"2_Jak_stworzyc_plik_htaccess\"><\/span>2. Jak stworzy\u0107 plik .htaccess?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Wystarczy przygotowa\u0107 jego tre\u015b\u0107 w dowolnym edytorze tekstu (Notatnik, Notepad++, SublimeText) i zapisa\u0107 pod nazw\u0105 .htaccess. .htaccess to ca\u0142a nazwa pliku. Nie jest to rozszerzenie i nie mo\u017cna go stworzy\u0107 pod nazw\u0105 typu <em>plik21.htaccess<\/em>. Utworzony plik nale\u017cy umie\u015bci\u0107 w katalogu g\u0142\u00f3wnym domeny (zazwyczaj &#8222;public_html&#8221;) je\u015bli regu\u0142y maj\u0105 dotyczy\u0107 ca\u0142ej domeny. Ponadto dla ka\u017cdej subdomeny, a tak\u017ce folderu mo\u017cna przygotowa\u0107 osobne pliki .htaccess.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-4\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"3\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"3_Do_czego_sluzy\"><\/span>3. Do czego s\u0142u\u017cy?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>W pliku .htaccess mo\u017cna przekierowa\u0107 odwiedzaj\u0105cych na inn\u0105 stron\u0119, skonfigurowa\u0107 strony b\u0142\u0119d\u00f3w, zabezpieczy\u0107 strony has\u0142em, a tak\u017ce wykona\u0107 wszelkie dzia\u0142ania dotycz\u0105ce kierowania ruchem po stronie serwera.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-5\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"4\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"4_Przykladowa_zawartosc_pliku\"><\/span>4. Przyk\u0142adowa zawarto\u015b\u0107 pliku<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<blockquote><p><code>RewriteEngine on<br \/>\nRewriteCond %{HTTP_HOST} ^www.domena.pl(.*) [NC]<br \/>\nRewriteRule ^(.*)$ http:\/\/domena.pl\/$1 [R=301,L]<br \/>\nRewriteRule ^usuniety-adres$ http:\/\/domena.pl\/nowy-adres [L,R=301]<\/code><\/p><\/blockquote>\n<p><em>RewriteEngine on<\/em> &#8211; w\u0142\u0105cza modu\u0142 mod_rewrite, kt\u00f3ry realizuje dalsze komendy.<br \/>\n<em>RewriteCond %{HTTP_HOST} ^www.domena.pl(.*) [NC]<\/em> &#8211; definiuje rozpoznawany warunek, gdzie pierwszy ci\u0105g znak\u00f3w oznacza rozpoznawany element (w tym przypadku to %{HTTP_HOST} &#8211; host \u017c\u0105dany od serwera), natomiast drugi ci\u0105g znak\u00f3w oznacza warto\u015b\u0107 elementu, kt\u00f3ra wywo\u0142a warunek (w tym przypadku to ^www.domena.pl(.*) [NC] &#8211; wersja domeny z przedrostkiem www., bez r\u00f3\u017cnicy odno\u015bnie wielko\u015bci liter). Podana regu\u0142a sprawdza, czy domena na serwerze zosta\u0142a odpytana z przedrostkiem www, a wynik wp\u0142ywa na kolejn\u0105 lini\u0119 w pliku.<br \/>\n<em>RewriteRule ^(.*)$ http:\/\/domena.pl\/$1 [R=301,L]<\/em> &#8211; wykonuje komend\u0119 zale\u017cn\u0105 od warunku w poprzedniej linii, gdzie pierwszy ci\u0105g znak\u00f3w oznacza element modyfikowany (w tym przypadku to ^(.*)$ &#8211; wszystkie adresy), natomiast drugi ci\u0105g znak\u00f3w oznacza spos\u00f3b modyfikacji (w tym przypadku to http:\/\/domena.pl\/$1 [R=301,L] &#8211; przekierowanie 301 na domen\u0119 bez przedrostka www.). Razem z poprzedni\u0105 lini\u0105, ten zestaw RewriteCond &#8211; RewriteRule zapewnia, \u017ce wszystkie adresy w domenie s\u0105 dost\u0119pne wy\u0142\u0105cznie pod adresem bez przedrostka www.<br \/>\n<em>RewriteRule ^usuniety-adres$ http:\/\/domena.pl\/nowy-adres [L,R=301]<\/em> &#8211; wykonuje niezale\u017cn\u0105 komend\u0119. Zasady s\u0105 podobne do poprzedniej linii, jednak tutaj warunek zosta\u0142 <i>ukryty<\/i> w pierwszym ci\u0105gu znak\u00f3w, poniewa\u017c modyfikacja jest wykonywana tylko, gdy adresem jest domena.pl\/usuniety-adres. W przypadku pr\u00f3by za\u0142adowania tego adresu, serwer przekieruje odpytuj\u0105cego na domena.pl\/nowy-adres.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-6\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"5\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"5_Popularne_przekierowania_w_htaccess\"><\/span>5. Popularne przekierowania w .htaccess<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Przekierowanie umo\u017cliwia przej\u015bcie z jednego adresu URL na drugi.<\/p>\n<p>Przekierowania zaczynamy od umieszczenia na pocz\u0105tku pliku RewriteEngine On, kt\u00f3ry aktywuje modu\u0142 mod_rewrite.<\/p>\n<p><a name=\"5-1\"><\/a><strong>Przekierowanie 301<\/strong><\/p>\n<p>Przyjazna i skuteczna metoda przekierowania, kt\u00f3ra informuje przegl\u0105darki o tym, \u017ce strona zosta\u0142a przeniesiona na inny adres URL.<\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\nRewriteRule ^poprzedni-adres$ http:\/\/domena.pl\/nowy-adres [L,R=301]<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p><a name=\"5-2\"><\/a><strong>Wymuszenie HTTPS w adresie URL domeny<\/strong><br \/>\nPo aktywacji certyfikatu SSL, mo\u017cna wymusi\u0107 automatyczne przekierowanie na stron\u0119 z HTTPS u\u017cytkownika poni\u017csz\u0105 instrukcj\u0105:<\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\nRewriteCond %{HTTP_HOST} off<br \/>\nRewriteRule .* https:\/\/%{HTTP_HOST}%{REQUEST_URI}<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p><a name=\"5-3\"><\/a><strong>Wymuszenie przedrostka www w adresie URL domeny<\/strong><br \/>\nDost\u0119pno\u015b\u0107 strony pod dwoma wersjami &#8211; z oraz bez przedrostka www &#8211; utrudnia prowadzenie w\u0142a\u015bciwego SEO. Zawsze warto zadba\u0107 o zdefiniowanie jednej, najwa\u017cniejszej wersji. Przekierowanie na wersj\u0119 www.:<\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\nRewriteCond %{HTTP_HOST} ^domena.pl(.*) [NC]<br \/>\nRewriteRule ^(.*)$ http:\/\/www.domena.pl\/$1 [R=301,L]<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p><a name=\"5-4\"><\/a><strong>Wymuszenie adresu URL bez przedrostka www<\/strong><br \/>\nAnalogicznie, przekierowanie na wersj\u0119 bez www.:<\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\nRewriteCond %{HTTP_HOST} ^www.domena.pl(.*) [NC]<br \/>\nRewriteRule ^(.*)$ http:\/\/domena.pl\/$1 [R=301,L]<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p><a name=\"5-5\"><\/a><strong>Przekierowanie ca\u0142ej domeny na now\u0105<\/strong><br \/>\nPoni\u017csza regu\u0142a jest przydatna, je\u015bli chcemy stary adres podstrony przenie\u015b\u0107 na nowy.<\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\nRewriteCond %{HTTP_HOST} !poprzednia-domena.pl$ [NC]<br \/>\nRewriteRule ^(.*)$ http:\/\/nowa-domena.pl\/$1 [L,R=301]<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p><a name=\"5-6\"><\/a><strong>Przekierowanie bez u\u017cycia mod_rewrite<\/strong><br \/>\nJe\u015bli modu\u0142 mod_rewrite nie jest dost\u0119pny, przekierowania 301 mo\u017cna zrealizowa\u0107 za pomoc\u0105 komendy Redirect 301.<\/p>\n<blockquote><p><code>Redirect 301 \/starapodstrona.php http:\/\/www.domena.pl\/nowapodstrona.html<\/code><\/p><\/blockquote>\n<h3><span class=\"ez-toc-section\" id=\"i-7\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"6\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"6_Wlasna_strona_bledu\"><\/span>6. W\u0142asna strona b\u0142\u0119du<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Utworzenie w\u0142asnej strony b\u0142\u0119du to standardowe, wa\u017cne dzia\u0142anie, kt\u00f3re pozwala na d\u0142u\u017cej zatrzymywa\u0107 u\u017cytkownik\u00f3w. Za pomoc\u0105 odpowiedniej podstrony mo\u017cna wskaza\u0107 adresy podobne do odwiedzonego i\/lub udost\u0119pni\u0107 wyszukiwark\u0119.<\/p>\n<p>Skonfigurowanie niestandardowej strony b\u0142\u0119du umo\u017cliwia instrukcja zamieszczona poni\u017cej:<\/p>\n<blockquote><p><code>ErrorDocument 404 \/error_pages\/404.html<\/code><\/p><\/blockquote>\n<p>Gdzie \/error_pages\/404.html to \u015bcie\u017cka do podstrony b\u0142\u0119du.<\/p>\n<p>Analogicznie mo\u017cna utworzy\u0107 dedykowane podstrony dla innych popularnych b\u0142\u0119d\u00f3w, takich jak 403 (odmowa dost\u0119pu) czy 500 (b\u0142\u0105d serwera).<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-8\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"7\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"7_Blokowanie_okreslonych_adresow_IP\"><\/span>7. Blokowanie okre\u015blonych adres\u00f3w IP<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>W przypadku wykrycia u\u017cytkownik\u00f3w\/skrypt\u00f3w nadu\u017cywaj\u0105cych zasob\u00f3w lub pr\u00f3buj\u0105cych zaszkodzi\u0107 stronie, warto pozbawi\u0107 ich dost\u0119pu do serwera ju\u017c na poziomie .htaccess.<\/p>\n<p>&nbsp;<\/p>\n<p><a name=\"7-1\"><\/a><strong>Blokada wszystkich adres\u00f3w IP<\/strong><\/p>\n<blockquote><p><code>Deny from all<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p><a name=\"7-2\"><\/a><strong>Blokada wszystkich adres\u00f3w IP z wyj\u0105tkiem zdefiniowanych<\/strong><\/p>\n<blockquote><p><code>Order Allow,Deny<br \/>\nAllow from 123.456.789.0<\/code><\/p><\/blockquote>\n<p>Komenda Order definiuje kolejno\u015b\u0107 przetwarzania. W tym przypadku Allow,Deny oznacza, \u017ce najpierw b\u0119d\u0105 przetwarzane wszystkie komendy Allow, a w przypadku braku w\u0142a\u015bciwej dla danego IP regu\u0142y, zostanie zrealizowana komenda Deny.<\/p>\n<p>&nbsp;<\/p>\n<p><a name=\"7-3\"><\/a><strong>Blokada wybranych adres\u00f3w IP<\/strong><\/p>\n<blockquote><p><code>Order Deny,Allow<br \/>\nDeny from 123.456.789.0<\/code><\/p><\/blockquote>\n<p>Odwrotnie w stosunku do poprzedniego przyk\u0142adu, najpierw przetwarzane s\u0105 komendy Deny, a je\u015bli nie dotycz\u0105 odpytuj\u0105cego to jest on domy\u015blnie dopuszczany do serwera.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-9\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"8\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"8_Blokowanie_uzytkownikow_na_podstawie_strony_odsylajacej\"><\/span>8. Blokowanie u\u017cytkownik\u00f3w na podstawie strony odsy\u0142aj\u0105cej<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<blockquote><p><code>RewriteEngine on<br \/>\n# Options +FollowSymlinks<br \/>\nRewriteCond %{HTTP_REFERER} niechcianadomena\\.pl [NC]<br \/>\nRewriteRule .* - [F]<\/code><\/p><\/blockquote>\n<p>Powy\u017csza instrukcja blokuje ruch pochodz\u0105cy z przej\u015b\u0107 z domeny niechcianadomena.pl. Do poprawnego funkcjonowania, serwer powinien mie\u0107 w\u0142\u0105czon\u0105 opcj\u0119 FollowSymlinks &#8211; je\u015bli nie jest, serwer zwr\u00f3ci b\u0142\u0105d 500, co mo\u017cna naprawi\u0107 za pomoc\u0105 odkomentowania (usuni\u0119cia znaku #) linii # Options +FollowSymlinks. U\u017cytkownicy, kt\u00f3rym dost\u0119p zosta\u0142 odm\u00f3wiony, otrzymaj\u0105 podstron\u0119 kodu b\u0142\u0119du 403, kt\u00f3r\u0105 mo\u017cna odpowiednio spersonalizowa\u0107 zgodnie z punktem 6.<\/p>\n<p>Mo\u017cna r\u00f3wnie\u017c wdro\u017cy\u0107 ograniczenie dotycz\u0105ce wi\u0119kszej ilo\u015bci domen:<\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\n# Options + FollowSymlinks<br \/>\nRewriteCond %{HTTP_REFERER} pierwszaniechcianadomena\\.pl [NC,OR]<br \/>\nRewriteCond %{HTTP_REFERER} druganiechcianadomena\\.pl [NC]<br \/>\nRewriteRule .* - [F]<\/code><\/p><\/blockquote>\n<p>Dodatkowe domeny, opr\u00f3cz ostatniej, powinny zawiera\u0107 dodatkow\u0105 flag\u0119 [OR], kt\u00f3ra pozwala na wyd\u0142u\u017cenie sprawdzania warunk\u00f3w.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-10\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"9\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"9_Zatrzymanie_hotlinkow\"><\/span>9. Zatrzymanie hotlink\u00f3w<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Pliki graficzne mog\u0105 by\u0107 bezpo\u015brednio z naszego serwera wy\u015bwietlane na innych stronach &#8211; jest to <i>hotlinking<\/i>, kt\u00f3ry powoduje utrat\u0119 transferu, a cz\u0119sto jest r\u00f3wnie\u017c naruszeniem praw autorskich. Mo\u017cna temu zapobiec za pomoc\u0105 instrukcji:<\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\nRewriteCond %{HTTP_REFERER} !^$<br \/>\nRewriteCond %{HTTP_REFERER} !^http:\/\/(subdomena\\.)?domena\\.pl\/.*$ [NC]<br \/>\nRewriteRule ^.*\\.(bmp|tif|gif|jpg|jpeg|jpe|png)$ http:\/\/www.nooooooooooooooo.com\/ [F]<\/code><\/p><\/blockquote>\n<p>Domena i subdomena to strony z dozwolonym dost\u0119pem do plik\u00f3w graficznych. Pozosta\u0142e strony podejmuj\u0105ce pr\u00f3b\u0119 hotlinkowania zostan\u0105 przekierowane do <a href=\"http:\/\/www.nooooooooooooooo.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.nooooooooooooooo.com\/<\/a>.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-11\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"10\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"10_Blokowanie_witryny_przed_botami\"><\/span>10. Blokowanie witryny przed botami<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Podobnie jak dla stron odsy\u0142aj\u0105cych, blokowanie dost\u0119pu mo\u017cna warunkowa\u0107 r\u00f3wnie\u017c nazwami bot\u00f3w:<\/p>\n<blockquote><p><code>RewriteEngine On<br \/>\nRewriteCond %{HTTP_USER_AGENT} ^nazwabota [OR]<br \/>\nRewriteCond %{HTTP_USER_AGENT} ^nazwabota<br \/>\nRewriteRule .* - [F]<\/code><\/p><\/blockquote>\n<p>Lista wszystkich nazw bot\u00f3w jest dost\u0119pna pod adresem <a href=\"http:\/\/www.useragentstring.com\/pages\/useragentstring.php?typ=Crawler\" target=\"_blank\" rel=\"noopener noreferrer\">useragentstring.com<\/a>.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-12\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"11\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"11_Ustawienie_domyslnej_strony_glownej_lub_folderu\"><\/span>11. Ustawienie domy\u015blnej strony g\u0142\u00f3wnej lub folderu<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Standardowo serwer po odpytaniu serwera prezentuje u\u017cytkownikowi plik index.*, jednak mo\u017cna to zmieni\u0107 w .htaccess:<\/p>\n<blockquote><p><code>DirectoryIndex innyplik.php<\/code><\/p><\/blockquote>\n<p>Ponadto mo\u017cna specyficznie dla poszczeg\u00f3lnych folder\u00f3w ustali\u0107 pliki, kt\u00f3re b\u0119d\u0105 wy\u015bwietlane pod odpytaniu domena.pl\/folder\/.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-13\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"12\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"12_Ochrona_za_pomoca_hasla\"><\/span>12. Ochrona za pomoc\u0105 has\u0142a<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Dost\u0119p do folderu lub plik\u00f3w mo\u017ce by\u0107 ograniczony po stronie serwera za pomoc\u0105 has\u0142a. Przyk\u0142ad ochrony pliku wp-login.php, kt\u00f3ry s\u0142u\u017cy do logowania w CMSie WordPress:<\/p>\n<blockquote><p><code>&lt;Files wp-login.php&gt;<br \/>\nOrder Deny,Allow<br \/>\nDeny from All<br \/>\nSatisfy Any<br \/>\nAuthName \"Dostep Chroniony\"<br \/>\nAuthUserFile \/dostepchroniony\/.htpasswda1<br \/>\nAuthType Basic<br \/>\nRequire valid-user<br \/>\n&lt;\/Files&gt;<\/code><\/p><\/blockquote>\n<p>Nast\u0119puje tu odwo\u0142anie do pliku .htpasswd, kt\u00f3ry ma posta\u0107:<\/p>\n<blockquote><p><code>login:haslo<\/code><\/p><\/blockquote>\n<p>Przy czym has\u0142o jest zakodowane za pomoc\u0105 crypt(). Plik mo\u017cna wygenerowa\u0107 samodzielnie w PHP lub za pomoc\u0105 wielu darmowych narz\u0119dzi, na przyk\u0142ad <a href=\"http:\/\/www.htaccesstools.com\/htpasswd-generator\/\">htaccesstools.com<\/a>.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-14\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"13\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"13_Blokada_popularnych_prob_wlamania_w_systemie_WordPress\"><\/span>13. Blokada popularnych pr\u00f3b w\u0142amania w systemie WordPress<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Nale\u017cy wdra\u017ca\u0107 ostro\u017cnie, poniewa\u017c podany zestaw regu\u0142 mo\u017ce zmieni\u0107 funkcjonowanie wtyczek.<\/p>\n<blockquote><p><code>RewriteCond %{REQUEST_URI} !^\/(wp-login.php|wp-admin\/|wp-content\/plugins\/|wp-includes\/).* [NC]<br \/>\nRewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\\ \/\/\/.*\\ HTTP\/ [NC,OR]<br \/>\nRewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\\ \/.*\\?\\=?(http|ftp|ssl|https):\/.*\\ HTTP\/ [NC,OR]<br \/>\nRewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\\ \/.*\\?\\?.*\\ HTTP\/ [NC,OR]<br \/>\nRewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\\ \/.*\\.(asp|ini|dll).*\\ HTTP\/ [NC,OR]<br \/>\nRewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\\ \/.*\\.(htpasswd|htaccess|aahtpasswd).*\\ HTTP\/ [NC]<br \/>\nRewriteRule .? - [F,NS,L]<\/code><\/p><\/blockquote>\n<p>Innym wartym polecenia rozwi\u0105zaniem jest u\u017cycie dowolnych wtyczek zabezpieczaj\u0105cych, kt\u00f3re automatycznie r\u00f3wnie\u017c modyfikuj\u0105 .htaccess.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"i-15\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a name=\"14\"><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"14_Zlozone_przekierowania_z_uzyciem_wyrazen_regularnych\"><\/span>14. Z\u0142o\u017cone przekierowania z u\u017cyciem wyra\u017ce\u0144 regularnych<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Plik .htaccess akceptuje pe\u0142ne wyra\u017cenia regularne, co daje dowolne mo\u017cliwo\u015bci kszta\u0142towania adres\u00f3w, wykraczaj\u0105ce poza wy\u017cej podane przyk\u0142ady. Wdro\u017cenia, szczeg\u00f3lnie pod k\u0105tem SEO, s\u0105 specyficzne dla poszczeg\u00f3lnych system\u00f3w oraz stron. Odpowiednie wyra\u017cenia regularne mo\u017cna przygotowa\u0107 za pomoc\u0105 \u015bwietnego narz\u0119dzia <a href=\"https:\/\/regexr.com\/\">Regexr.com<\/a>. Poni\u017cej umieszczone zosta\u0142y przyk\u0142ady specyficznych wdro\u017ce\u0144.<\/p>\n<p>Usuni\u0119cie ko\u0144c\u00f3wek .html z adres\u00f3w:<\/p>\n<blockquote><p><code>RewriteCond %{THE_REQUEST} \\.html<br \/>\nRewriteRule ^(.*)\\.html$ \/$1 [R=301,L]<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p>Ograniczenie dost\u0119pu do adres\u00f3w z parametrami (podstrona?parametr=wartosc):<\/p>\n<blockquote><p><code>RewriteCond %{THE_REQUEST} ^[A-Z]+ \/.*\\ HTTP<br \/>\nRewriteCond %{QUERY_STRING} !^$<br \/>\nRewriteRule .* http:\/\/domena.pl%{REQUEST_URI}? [R=301,L]<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p>Obs\u0142uga przyjaznych adres\u00f3w:<\/p>\n<blockquote><p><code>RewriteCond %{REQUEST_URI} ^kategoria\/ [NC]<br \/>\nRewriteRule ^kategoria\/([0-9][0-9])\/?$ \/index.php?kategoria=$1 [L]<\/code><\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<p>24-godzinne przechowywanie w pami\u0119ci plik\u00f3w statycznych:<\/p>\n<blockquote><p><code>&lt;FilesMatch \".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$\"&gt;<br \/>\nHeader set Cache-Control \"max-age=28800\"<br \/>\n&lt;\/FilesMatch&gt;<\/code><\/p><\/blockquote>\n<h3><span class=\"ez-toc-section\" id=\"i-16\"><\/span>&nbsp;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h3><span class=\"ez-toc-section\" id=\"Dokumentacja\"><\/span>Dokumentacja<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"https:\/\/www.askapache.com\/htaccess\/\">AskApache.com<\/a><br \/>\n<a href=\"https:\/\/httpd.apache.org\/docs\/current\/mod\/mod_rewrite.html\">Httpd.apache.org<\/a><\/p>\n<p>[\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n\n\n<p>[vc_row section_content_width=&#8221;container-fullwidth&#8221;][vc_column][vc_column_text]<\/p>\n<div style=\"display: table; height: 220px; width: 101%; background: url('https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/baza-wiedzy-seo.jpg') no-repeat 50% 50%; background-size: cover; background-position: left bottom; margin: 65px -2px -40px -2px;\">&nbsp;<\/div>\n<p>[\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n\n\n\n<div style=\"margin-bottom: -20px;\">[rev_slider alias=&#8221;pozycjonowanie&#8221;]<\/div>\n","protected":false},"excerpt":{"rendered":"<p>[rev_slider alias=&#8221;pozycjonowanie&#8221;]<\/p>\n","protected":false},"author":11,"featured_media":43812,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13],"tags":[],"class_list":["post-6282","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wiedza-seo"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO - Blog NPROFIT<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO - Blog NPROFIT\" \/>\n<meta property=\"og:description\" content=\"[rev_slider alias=&#8221;pozycjonowanie&#8221;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/\" \/>\n<meta property=\"og:site_name\" content=\"NPROFIT\" \/>\n<meta property=\"article:published_time\" content=\"2018-08-14T11:04:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-16T09:47:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1500\" \/>\n\t<meta property=\"og:image:height\" content=\"1000\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Kamil Rybicki\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kamil Rybicki\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/\"},\"author\":{\"name\":\"Kamil Rybicki\",\"@id\":\"https:\/\/nprofit.net\/pl\/#\/schema\/person\/92bf22c8ebd1c7b18dbf148defacd529\"},\"headline\":\"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO\",\"datePublished\":\"2018-08-14T11:04:03+00:00\",\"dateModified\":\"2025-12-16T09:47:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/\"},\"wordCount\":1520,\"publisher\":{\"@id\":\"https:\/\/nprofit.net\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg\",\"articleSection\":[\"Wiedza SEO\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/\",\"url\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/\",\"name\":\"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO - Blog NPROFIT\",\"isPartOf\":{\"@id\":\"https:\/\/nprofit.net\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg\",\"datePublished\":\"2018-08-14T11:04:03+00:00\",\"dateModified\":\"2025-12-16T09:47:23+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#primaryimage\",\"url\":\"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg\",\"contentUrl\":\"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg\",\"width\":1500,\"height\":1000},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/nprofit.net\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/nprofit.net\/pl\/#website\",\"url\":\"https:\/\/nprofit.net\/pl\/\",\"name\":\"NPROFIT\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/nprofit.net\/pl\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/nprofit.net\/pl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/nprofit.net\/pl\/#organization\",\"name\":\"NPROFIT\",\"url\":\"https:\/\/nprofit.net\/pl\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/nprofit.net\/pl\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2025\/07\/bigLogo.png\",\"contentUrl\":\"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2025\/07\/bigLogo.png\",\"width\":323,\"height\":50,\"caption\":\"NPROFIT\"},\"image\":{\"@id\":\"https:\/\/nprofit.net\/pl\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/nprofit.net\/pl\/#\/schema\/person\/92bf22c8ebd1c7b18dbf148defacd529\",\"name\":\"Kamil Rybicki\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/nprofit.net\/pl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ee333759a7a67c04958b79fed2e66cdd446f429179aeef588293e00f5a67dd27?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ee333759a7a67c04958b79fed2e66cdd446f429179aeef588293e00f5a67dd27?s=96&d=mm&r=g\",\"caption\":\"Kamil Rybicki\"},\"url\":\"https:\/\/nprofit.net\/pl\/blog\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO - Blog NPROFIT","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/","og_locale":"pl_PL","og_type":"article","og_title":"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO - Blog NPROFIT","og_description":"[rev_slider alias=&#8221;pozycjonowanie&#8221;]","og_url":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/","og_site_name":"NPROFIT","article_published_time":"2018-08-14T11:04:03+00:00","article_modified_time":"2025-12-16T09:47:23+00:00","og_image":[{"width":1500,"height":1000,"url":"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg","type":"image\/jpeg"}],"author":"Kamil Rybicki","twitter_card":"summary_large_image","twitter_misc":{"Napisane przez":"Kamil Rybicki","Szacowany czas czytania":"8 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#article","isPartOf":{"@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/"},"author":{"name":"Kamil Rybicki","@id":"https:\/\/nprofit.net\/pl\/#\/schema\/person\/92bf22c8ebd1c7b18dbf148defacd529"},"headline":"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO","datePublished":"2018-08-14T11:04:03+00:00","dateModified":"2025-12-16T09:47:23+00:00","mainEntityOfPage":{"@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/"},"wordCount":1520,"publisher":{"@id":"https:\/\/nprofit.net\/pl\/#organization"},"image":{"@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#primaryimage"},"thumbnailUrl":"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg","articleSection":["Wiedza SEO"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/","url":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/","name":"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO - Blog NPROFIT","isPartOf":{"@id":"https:\/\/nprofit.net\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#primaryimage"},"image":{"@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#primaryimage"},"thumbnailUrl":"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg","datePublished":"2018-08-14T11:04:03+00:00","dateModified":"2025-12-16T09:47:23+00:00","breadcrumb":{"@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#primaryimage","url":"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg","contentUrl":"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2018\/08\/4143-1.jpg","width":1500,"height":1000},{"@type":"BreadcrumbList","@id":"https:\/\/nprofit.net\/pl\/blog\/htaccess-seo\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/nprofit.net\/pl\/"},{"@type":"ListItem","position":2,"name":"Kompendium wiedzy o .htaccess: przekierowania, zabezpieczenia, SSL, SEO"}]},{"@type":"WebSite","@id":"https:\/\/nprofit.net\/pl\/#website","url":"https:\/\/nprofit.net\/pl\/","name":"NPROFIT","description":"","publisher":{"@id":"https:\/\/nprofit.net\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/nprofit.net\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/nprofit.net\/pl\/#organization","name":"NPROFIT","url":"https:\/\/nprofit.net\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/nprofit.net\/pl\/#\/schema\/logo\/image\/","url":"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2025\/07\/bigLogo.png","contentUrl":"https:\/\/nprofit.net\/pl\/wp-content\/uploads\/2025\/07\/bigLogo.png","width":323,"height":50,"caption":"NPROFIT"},"image":{"@id":"https:\/\/nprofit.net\/pl\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/nprofit.net\/pl\/#\/schema\/person\/92bf22c8ebd1c7b18dbf148defacd529","name":"Kamil Rybicki","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/nprofit.net\/pl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ee333759a7a67c04958b79fed2e66cdd446f429179aeef588293e00f5a67dd27?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ee333759a7a67c04958b79fed2e66cdd446f429179aeef588293e00f5a67dd27?s=96&d=mm&r=g","caption":"Kamil Rybicki"},"url":"https:\/\/nprofit.net\/pl\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/posts\/6282","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/comments?post=6282"}],"version-history":[{"count":1,"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/posts\/6282\/revisions"}],"predecessor-version":[{"id":44282,"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/posts\/6282\/revisions\/44282"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/media\/43812"}],"wp:attachment":[{"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/media?parent=6282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/categories?post=6282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nprofit.net\/pl\/wp-json\/wp\/v2\/tags?post=6282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}