<?xml version="1.0"?>
<rss version="2.0"><channel><title>HTML, CSS &#x43F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x445; &#x442;&#x435;&#x43C;</title><link>https://ruschat.net/forums/forum/28-html-css/</link><description>HTML, CSS &#x43F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x445; &#x442;&#x435;&#x43C;</description><language>ru</language><item><title>&#x420;&#x435;&#x434;&#x438;&#x440;&#x435;&#x43A;&#x442; &#x447;&#x435;&#x440;&#x435;&#x437; .htaccess</title><link>https://ruschat.net/forums/topic/28-redirekt-cherez-htaccess/</link><description><![CDATA[<p>Редирект можно настроить разными способами: в панели управления хостингом, через код HTML, через PHP, с помощью web.config, через .htaccess, а также другими способами. Рассмотрим, в чём особенность редиректа через .htaccess и как настроить 301-й .htaccess-редирект с одной страницы на другую, а также Bitrix redirect.</p><h6><strong>В каких случаях подойдет .htaccess-редирект</strong></h6><p>Чтобы понять, для каких целей лучше подходит .htaccess-редирект, разберёмся, что такое .htaccess.</p><p><strong>.htaccess</strong> — этот системный файл, который принадлежит корневой структуре сайта. В отличие от главного конфигурационного файла, который позволяет выполнять настройку веб-сервера в целом, .htaccess даёт возможность изменять настройки для отдельно взятых папок и пользователей.</p><p>Файл .htaccess позволяет вариативно настроить сайт. Действие команд из .htaccess распространяется на папки и подкаталоги, расположенные в одной директории с этим файлом. Если для какой-либо вложенной директории нужны иные инструкции, в ней также можно создать .htaccess. Если .htaccess расположен в корневой директории сервера, его действие распространяется на весь сервер, кроме тех директорий, где находится другой файл .htaccess.</p><p>Таким образом, через .htaccess можно сделать перенаправление точечно, а не сразу для всего ресурса. Этот вариант отлично подойдет в том случае, если вам нужно настроить переадресацию только для одной или нескольких страниц сайта.</p><h6><strong>Для чего нужен 301-й редирект</strong></h6><p>Помимо разных способов настройки переадресации, существуют разные виды редиректов. Каждый из них имеет своё кодовое название. Основные виды:</p><ul><li><p>300 — сообщает, что по искомому запросу можно перейти не на одну, а на несколько альтернативных страниц;</p></li><li><p>301 — постоянный;</p></li><li><p>302 — временный;</p></li><li><p>303 — на схожую по тематике страницу;</p></li><li><p>305 — отсылающий к подключению через прокси-сервер.</p></li></ul><p>Также существуют 304-й, 306-й и 307-й редиректы. Однако сейчас эти виды практически никто не использует. Один из самых популярных видов — это 301-й.</p><p><strong>301-й редирект</strong> (Moved Permanently) — это постоянный редирект. Используется для перемещения страницы на новый URL-адрес насовсем. Когда поисковые системы встречают страницу с редиректом 301, они «понимают», что теперь необходимо индексировать новую страницу, а старую можно полностью исключить из индексации. Если настроить переадресацию 301 некорректно, на странице будет отображаться ошибка 404. Индексация страниц с ошибками приводит к снижению SEO-показателей всего веб-ресурса.</p><h6><strong>Как сделать редирект через .htaccess</strong></h6><p>Чтобы сделать перенаправление 301 через .htaccess, перейдите в каталог сайта и откройте .htaccess. Если файла ещё не существует, создайте его. После этого добавьте в файл строки кода из подходящей инструкции ниже.</p><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект Битрикс</span></strong></p></summary><p>1С-Битрикс — популярная CMS в которой время от времени необходимо настраивать перенаправление.</p><ul><li><p>Если вы хотите переадресовать домен с WWW на без WWW, укажите:</p></li></ul><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} !^/bitrix/admin/1c_exchange\.php$ [NC] 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]</code></pre><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>&lt;IfModule mod_rewrite.c&gt;
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www.site\.ru$ [NC]
    RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
&lt;/IfModule&gt;</code></pre><p>Где <strong>www.site.ru</strong> — домен, <strong>с которого</strong> происходит редирект, а <strong>site.ru</strong> — домен, <strong>на который</strong> происходит редирект.</p><ul><li><p>Если вам нужно сделать редирект Bitrix с домена без WWW на WWW, введите комбинацию:</p></li></ul><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteCond %{ENV:HTTPS} on 
RewriteRule .* - [E=SSL:s] 
RewriteCond %{HTTP_HOST} !^www\.(.*) [NC] 
RewriteRule ^(.*)$ http%{ENV:SSL}://www.%{HTTP_HOST}/$1 [R=301,L]</code></pre><p>Где <strong>www.</strong> — домен, <strong>с которого</strong> происходит редирект, а <strong>www.</strong> — домен, <strong>на который</strong> происходит редирект.</p><ul><li><p>Если вы хотите настроить в Битрикс редирект на другую страницу с http:// на https://, пропишите:</p></li></ul><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} !^/bitrix/admin/1c_exchange\.php$ [NC] 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]</code></pre></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с одного домена на другой</span></strong></p></summary><p>В файл .htaccess, который находится в папке сайта, с которого необходимо сделать переадресацию, добавьте следующие строки:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{HTTP_HOST} old-site.ru
RewriteRule (.*) http://new-site.ru/$1 [R=301,L]</code></pre><p>Где:</p><ul><li><p>old-site.ru — домен, <strong>с которого</strong> происходит редирект;</p></li><li><p>new-site.ru — домен, <strong>на который</strong> происходит редирект.</p></li></ul></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с одной страницы на другую</span></strong></p></summary><p>Добавьте в .htaccess следующие строки:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{HTTP_HOST} site.ru/old-page
RewriteRule (.*) http://site.ru/new-page$1 [R=301,L]</code></pre><p>Где:</p><ul><li><p><strong>site.ru/old-page</strong> — адрес прежней страницы,</p></li><li><p><strong>site.ru/new-page</strong> — адрес новой страницы.</p></li></ul></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с домена с WWW на домен без WWW</span></strong></p></summary><p>Добавьте в .htaccess следующие строки:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]</code></pre><p>Где site.ru — имя вашего домена.</p></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с домена без WWW на домен с WWW</span></strong></p></summary><p>Добавьте в .htaccess следующие строки:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{HTTP_HOST} ^site.ru
RewriteRule (.*) http://www.site.ru/$1 [R=301,L]</code></pre><p>Где site.ru — имя вашего домена.</p></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект для отдельного IP</span></strong></p></summary><p>Добавьте в .htaccess следующие строки:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{REMOTE_ADDR} 123.123.123.123
RewriteRule ^(.*)$ http://site.ru [R=301,L]</code></pre><p>Где site.ru — имя вашего домена.</p></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с https:// на http://</span></strong></p></summary><p>Добавьте в .htaccess следующие строки:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{SERVER_PORT} ^443$ [OR]
RewriteCond %{HTTPS} =on
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]</code></pre><p>Где site.ru — имя вашего домена.</p></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с http:// на https:// для Linux</span></strong></p></summary><p>Добавьте в .htaccess код из нужного вам примера ниже:</p><ul><li><p><strong>Для всех страниц с http:// на https://</strong></p></li></ul><p>Для всех страниц с http:// на https://, в том числе и с http://www на https://</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]</code></pre><p>Если первый вариант не поможет, воспользуйтесь вторым вариантом:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{HTTPS} =off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]</code></pre><p>Если все варианты не помогли и возникает <strong>циклическая переадресация</strong>:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]</code></pre><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On 
RewriteCond %{ENV:HTTPS} !on 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]</code></pre><ul><li><p><strong>Перенаправление на https только выбранной страницы</strong></p></li></ul><p>В примерах ниже переадресация настраивается для страницы <strong>login.php</strong>:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} =/login.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]</code></pre><p>Или:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} =/login.php
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]</code></pre><ul><li><p><strong>Перенаправление на https всех страниц, кроме одной</strong></p></li></ul><p>В примере ниже редирект настраивается для страницы <strong>test.php</strong>.</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} !^/test.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]</code></pre></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с главной страницы, кроме остальных страниц сайта</span></strong></p></summary><p>В файл .htaccess, который находится в папке сайта, с которого необходимо сделать переадресацию, добавьте следующие строки:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteRule ^$ https://site.ru [R=301,L]</code></pre></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект со всех страниц сайта, кроме главной</span></strong></p></summary><p> файл .htaccess, который находится в папке сайта, с которого необходимо сделать переадресацию, добавьте следующие строки:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteEngine On
RewriteCond %{REQUEST_URI} !^/$
RewriteRule ^(.*)$ http://site.ru/ [L,R=301]</code></pre></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с GET-параметрами</span></strong></p></summary><p>Если вам необходимо сделать .htaccess редирект с get параметрами, укажите:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteCond %{REQUEST_URI} /index.php
RewriteRule ^(.*)$ http://site.ru/ [R=301,L]</code></pre><p>Где site.ru — имя вашего домена.</p></details><p></p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong><span style="font-family: Arial, Helvetica, sans-serif;">301 редирект с массовой склейкой</span></strong></p></summary><p>Если вам необходимо сделать .htaccess редирект на index php, введите:</p><pre spellcheck="" class="ipsCode language-plaintext" data-language="Простой текст"><code>RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html|htm)\ HTTP/ 
RewriteRule ^(.*)index\.(php|html|htm)$ http://site.ru/$1 [R=301,L]</code></pre><p>Где site.ru — имя вашего домена.</p></details>]]></description><guid isPermaLink="false">28</guid><pubDate>Sun, 28 Jun 2026 20:48:32 +0000</pubDate></item></channel></rss>
