Fornex
Европейский
хостинг

    с http на https

    Для настройки переадресации (редиректа), в директории своего сайта, добавьте в начало файла .htaccess (если этого файла нет, то создайте, заметьте файлы начинается с точки), следующие строки:

    RewriteEngine On  
    RewriteCond %{HTTPS} off  
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]  
    

    или как другой вариант

    RewriteEngine On  
    RewriteCond %{HTTP:X-HTTPS} !1  
    RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]  
    

    с https на http

    Что бы создать редирект с HTTPS на HTTP с помощью .htaccess, вам нужно открыть файл .htaccess , в папке сайта, если его нет то необходимо создать этот файл (.htaccess), и написать следующий код:

    RewriteEngine on  
    RewriteCond %{HTTPS} on  
    RewriteRule ^.*$ http://%{SERVER_NAME}%{REQUEST_URI}  
    

    редирект с одной страницы на другую

    Redirect 301 /test-1/ http://site.ru/test-2/  
    
    RewriteCond %{REQUEST_URI} ^/test/$  
    RewriteRule ^.*$ http://site.ru/new-test/? [R=301,L]  
    

    редирект с www на без www (главное зеркало – домен без www)

    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)$ http://%1/$1 [L,R=301]  
    

    редирект с без www на www (главное зеркало – домен с www)

    RewriteCond %{HTTP_HOST} ^([^www].*)$  
    RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]  
    

    редирект со страниц со слешем на без слеша (весь сайт)

    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} ![^\/]$  
    RewriteRule ^(.*)\/$ /$1 [R=301,L]  
    

    редирект со страниц без слеша на слеш (часто в CMS системах устанавливается автоматически)

    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} !\/$  
    RewriteRule ^(.*[^\/])$ /$1/ [R=301,L]  
    

    один (а не два последовательных!) редирект на без www и с слешем на конце адреса страницы

    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} !\/$  
    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)$ http://%1/$1/ [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} ![^\/]$  
    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)$ http://%1/$1 [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} !\/$  
    RewriteCond %{HTTP_HOST} ^([^www].*)$  
    RewriteRule ^(.*)$ http://%1/$1/ [L,R=301]  
    

    один (а не два последовательных!) редирект на c www и со слешем на конце адреса страницы

    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} !\/$  
    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)$ http://www.%1/$1/ [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} !\/$  
    RewriteCond %{HTTP_HOST} ^([^www].*)$  
    RewriteRule ^(.*)$ http://www.%1/$1/ [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} ![^\/]$  
    RewriteCond %{HTTP_HOST} ^([^www].*)$  
    RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]  
    

    один (а не два последовательных!) редирект на c www и без слеша на конце адреса страницы

    RewriteCond %{REQUEST_URI} ^\/$  
    RewriteCond %{HTTP_HOST} ^([^www].*)$  
    RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} \/$  
    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)\/$ http://www.%1/$1 [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} !\/$  
    RewriteCond %{HTTP_HOST} ^([^www].*)$  
    RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} \/$  
    RewriteCond %{HTTP_HOST} ^([^www].*)$  
    RewriteRule ^(.*)\/$ http://www.%1/$1 [L,R=301]  
    

    один (а не два последовательных!) редирект на без www и без слеша на конце адреса страницы

    RewriteCond %{REQUEST_URI} ^\/$  
    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)$ http://%1/$1 [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} \/$  
    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)\/$ http://%1/$1 [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} !\/$  
    RewriteCond %{HTTP_HOST} ^www\.(.*)$  
    RewriteRule ^(.*)$ http://%1/$1 [L,R=301]  
    
    RewriteCond %{REQUEST_URI} !\?  
    RewriteCond %{REQUEST_URI} !\&  
    RewriteCond %{REQUEST_URI} !\=  
    RewriteCond %{REQUEST_URI} !\.  
    RewriteCond %{REQUEST_URI} \/$  
    RewriteCond %{HTTP_HOST} ^([^www].*)$  
    RewriteRule ^(.*)\/$ http://%1/$1 [L,R=301]  
    

    редирект только адреса site.ru/index.php (без GET параметров) на основное зеркало site.ru

    RewriteCond %{REQUEST_URI} /index.php  
    RewriteCond %{QUERY_STRING} ^\z  
    RewriteRule ^(.*)$ http://site.ru/? [R=301,L]  
    

    редирект всех адресов с index.php и GET параметрами на страницы только с GET параметрами (вырезать в url index.php)

    Пример: типа site.ru/index.php?n=1 на site.ru/?n=1

    RewriteCond %{REQUEST_URI} /index.php  
    RewriteRule ^(.*)$ http://site.ru/ [R=301,L]  
    

    редирект для index.php, index.html или index.htm (например в Joomla), массовая склейка

    RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html|htm)\ HTTP/  
    RewriteRule ^(.*)index\.(php|html|htm)$ http://site.ru/$1 [R=301,L]  
    

    редирект url с GET параметрами (динамический URL) на статический

    1 вариант (простой адрес с GET параметром)

    RewriteCond %{QUERY_STRING} ^id=229  
    RewriteRule ^.*$ /supermodel/? [R=301,L]  
    

    2 вариант (со страницы и GET параметром)

    RewriteCond %{REQUEST_URI} /test/  
    RewriteCond %{QUERY_STRING} ^id=229  
    RewriteRule ^.*$ /supermodel/? [R=301,L]  
    

    все страницы одного домена на главную страницу другого домена

    RewriteCond %{REQUEST_URI} (.*)  
    RewriteRule ^(.*)$ http://site.ru/ [L,R=301]  
    

    каждая страница одного домена на такой же адрес другого url

    RewriteCond %{REQUEST_URI} (.*)  
    RewriteRule ^(.*)$ http://site.ru/$1 [L,R=301]