Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

5). При переходе бесплатного хостинга на платный.

Также есть ещё ряд применений редиректу 301, но пока остановимся на вышесказанном.

Классификация redirect (редиректа)

Как я уже сказал, для общего развития, начинающему вебмастеру нужно знать, что кроме 301 редиректа существуют и другие:

Но наиболее часто используют 301 редирект.

Как сделать 301 redirect (редирект) через файл. htaccess?

Возникает вопрос: а что же такое файл. htaccess? Это файл, в котором будут хранится различные команды 301 редиректа (о переадресации страницы, домена и т. д.).

Для того, чтобы его создать откройте программу FileZilla или Total Commander, выберите любой ненужный Вам файл и переименуйте его с помощью выбранного FTP клиента на. htaccess, всё теперь файл создан. Да, файл. htaccess — это обычный файл с именем. htaccess.

Дело в том, что обычным способом на компьютере его не переименовать, выдаётся ошибка (у меня так), а при помощи вышеперечисленных программ точно можно.

А теперь открываем файл (с помощью текстового редактора) и вписываем необходимый код редиректа.

Если Вы хотите переправить посетителей одного сайта на другой:

Redirect 301 / http://www. домен. com

Redirect 301 — указывает, на то, что сайт перемещён;

«/» — указывает, что всё с верхнего уровня блога будет перемещено (переадресовано) на новый домен.

Например, если Вы хотите с одной страницы сайта сделать перенаправление на другую страницу сайта, то в файл. htaccess нужно вставить следующий код:

Redirect 301 /старая-страница. html http://новый-домен. ru/новая-страница. html
или
Redirect permanent /старая-страница. html http://новый-домен. ru/новая-страница. html

НЕ нашли? Не то? Что вы ищете?

или

RedirectPermanent /старая-страница. html http://новый-домен. ru/новая-страница. html

Редирект с помощью директивы RedirectMatch

Этот редирект практически тот же, что и предыдущий, но здесь Вы можете задать регулярное выражение для старых УРЛ-адресов, например, при смене CMS с PHP на ASP, код редиректа будет выглядеть так:

RedirectMatch /(.*)\.php$ /$1.aspx

Редирект 301 с домена с www на домен без www

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

Редирект 301 с домена без www на домен с www

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

RewriteEngine on|off - это специальная директива, которая служит для отключения или включения доступа к коду файла. htaccess, доступ осуществляется через модуль хостинга mod_rewrite;

RewriteCond - это специальная директива, которая определяет условия для правил преобразований. Является директивой модуля хостинга mod_rewrite;

RewriteRule - это директива, которая отвечает за различные преобразования. В данном случае редирект 301.

Сначала информация о странице поступает в директиву RewriteCond, после чего эта информация преобразовывается в директиву RewriteRule. Вот так работает вышеприведённый код, если вкратце.


301 редирект
    Это наверно знают все – 301 редирект, чтобы не создавать дубли страниц и путаницу с www. Ниже приведенный код делает переадресацию с www на без www.

1

2

3

4

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www. vityok\.su$ [NC]

RewriteRule ^(.*)$ http:///$1 [R=301,L]

    Этот трюк позволяет бороться с хотлинкингом. Если какие-то ГС будут парсить ваш контент, то ссылки с изображений на их сайте будут вести на ваш проект, что создаст дополнительную нагрузку на хостинг. Этот код в таких случах будет выдавать ошибку вместо изображений на тех самых ГС.

1

2

3

4

5

6

7

8

9

10

RewriteEngine On

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?yandex\.ru/.*$ [NC]

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?undsoft\.com/.*$ [NC]

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?yandex\.net/.*$ [NC]

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?feedburner\.com/.*$ [NC]

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mail\.ru/.*$ [NC]

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?poisk\.ru/.*$ [NC]

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?vityok\.su/.*$ [NC]

RewriteCond %{HTTP_REFERER} !^$ [NC]

RewriteRule.*\.(jpe? g|gif|bmp|png)$ stophotlinking. gif [L]

    Кеширование файлов изображений, css, js в браузерах пользвателей, что позволяет снизить нагрузку на хостинг.

1

2

3

4

5

6

7

FileETag MTime Size

<ifmodule mod_expires. c>

<filesmatch ".(jpg|gif|png|css|js)$">

ExpiresActive on

ExpiresDefault "access plus 1 year"

</filesmatch>

</ifmodule>

    Автоматическое сжатие файлов, перед тем как они будут загружены в браузер пользователя. Также понижает нагрузку.

1

2

3

4

5

6

7

8

mod_gzip_on Yes

mod_gzip_dechunk Yes

mod_gzip_item_include file \.(html?|txt|css|js|php)$

mod_gzip_item_include handler ^cgi-script$

mod_gzip_item_include mime ^text/.*

mod_gzip_item_include mime ^application/x-javascript.*

mod_gzip_item_exclude mime ^image/.*

mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*

    При переходе на какую-то версию WordPress столкнулся с проблемой, что на всех проектах не мог загрузить картинки через Flash-загрузчик. Проблему решил следующим кодом, который сейчас автоматически прописываю в htaccess, даже для новых проектов.

1

2

3

4

5

6

<IfModule mod_security. c>

<Files async-upload. php>

SecFilterEngine Off

SecFilterScanPOST Off

</Files>

</IfModule>

    Запрет на просмотр директорий пользователями.

1

Options All - Indexes



ИНДЕКСНЫЕ СТРАНИЦЫ

Когда пользователь заходит на хост например http://gentoo. org принято, что открывается индексный файл index.* при его отсутствии - либо содержимое каталога, либо ошибку 403 (FORBIDDEN) если опция отключена - запрещен просмотр директорий.

За листинг файлов отвечает директива Indexes (показывать посетителю список файлов, если в выбранном каталоге нет файла index. html или его аналога).

Иногда нужно сделать так, чтобы в случае отсутствия в каталоге файла, который показывается по умолчанию, листинг, то есть список файлов в каталоге, не выдавался. В этом случае добавим в. htaccess такую строчку:

# Запрет выдачи листинга пустого каталога

Options - Indexes

А чтобы выдавал листинг, нужно:

Options Indexes

Если же понадобиться разрешить просматривать список файлов, но чтобы при этом чаcть файлов определенного формата не отображалась, то запишем:.

IndexIgnore *.php* *.pl

Выдает листинг каталога, т. е. его содержание со всем содержанием, за исключением файлов-скриптов PHP и Perl.
Если ваш веб-сайт построен на скриптах, то в качестве индексных часто могут использоваться файлы с другими расширениями - указать эти файлы можно с помощью директивы DirectoryIndex.

DirectoryIndex index. html index. shtml index. pl index. cgi index. php

Если же вы хотите что бы при обращении к каталогу открывался не index. html, а например, файл htaccess. php или /cgi-bin/index. pl:

DirectoryIndex htaccess. php /cgi-bin/index. pl

ОБРАБОТКА ОШИБОК

В ходе работы сервера иногда возникают ошибки, скорее это будет правильней назвать не сбоями в работе сервера, а стандартными кодами возврата оговоренными в стандарте HTTP_RFC2616. Вообще, в RFC ошибки называются "Status Codes", но мы их будем называть именно ошибками - так привычнее.

Код возврата - это трехзначное число, на основании которого можно судить о том, насколько успешно был обработан запрос. Код возврата начинающиеся на 1,2,3 считаются успешными, остальные причисляются к разряду ошибок.

Вот список ошибок 4xx и 5xx :

400 - Bad Request

401 - Unauthorized

402 - Payment Required

403 - Forbidden

404 - Not Found

405 - Method Not Allowed

406 - Not Acceptable

407 - Proxy Authentication Required

408 - Request Time-out

409 - Conflict

410 - Gone

411 - Length Required

412 - Precondition Failed

413 - Request Entity Too Large

414 - Request-URI Too Large

415 - Unsupported Media Type

500 - Internal Server Error

501 - Not Implemented

502 - Bad Gateway

503 - Service Unavailable

504 - Gateway Time-out

505 - HTTP Version not supported

При возникновении ошибки 4xx или 5xx посетитель Вашего сайта увидит в браузере сообщение от сервера, которое вряд ли можно назвать предельно понятным рядовому пользователю. Apache предоставляет возможность выдать вместо аскетичного технического текста, не изобилующего деталями, свою страницу, где Вы можете человеческим языком объяснить пользователю, что произошло и что делать.

Пример переопределения страниц ошибок приведен ниже:

# содержание файла. htaccess:

ErrorDocument 404 http://bg10.ru/error/404.htm

ErrorDocument 403 http://bg10.ru/error/403.htm

ErrorDocument 400 http://bg10.ru/error/400.htm

ErrorDocument 500 http://bg10.ru/error/500.htm

# в случае ошибки "FORBIDDEN" показывается текстовое сообщение, которое

# обязательно должно начинаться с кавычки, кавычка в сообщении не выводится:

ErrorDocument 403 "Sorry can't allow you access today, 403 Status Codes Apache"

Более подробно об обработке ошибок можно прочитать в документации по Apache на странице "Custom error responses".

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5