Руководство по использованию .htaccess
На страницу 1, 2, 3, 4  След.
Новая тема Написать ответ
# Ср Мар 01, 2006 4:47 amNo Зарег.: 01.08.2005 ; Сообщ.: 3746Ответить с цитатой
Руководство по использованию .htaccess

Файл .htaccess используется для "гибкой" настройки сервера Apache (обработки ошибок, ограничения доступа). В этой статье будем учиться его использовать. Обычно файл .htaccess лежит в корневом каталоге и действует на весь сайт и на все дирректрии (если в них не находится "своего" .htaccess). Если необходимо создать конкретные настройки Apache для определенной папки, следует поместить в нее новый файл .htaccess и действие его распространится на данную папку. Причем .htaccess лежащий в корне сайта никак влиять на эту папку в этом случае не будет.

Как сделать .htaccess
Просто. На локальном компе создаем текстовый документ .htaccess.txt, по FTP заливаем его на хост, и переименовываем в .htaccess


Теперь немного конкретики. Что можно сделать посредством .htaccess?


Меняем страницу, которая будет показываться при обращении к директории.

Пропишем в файле .htaccess:

DirectoryIndex index.shtml
** При обращение к директории, в которой лежит .htaccess, будет грузиться файл index.shtml


Запрет доступа с помощью .htaccess

При желании можем дать запрет на все файлы:

deny from all
*** никто ничего не увидит.


Разрешить доступ посетителю только с определенного ip:

Order Allow,Deny
deny from all
allow from 192.168.8.1
*** Всем кроме посетителя с IP 192.168.8.1 доступ запрещен.

Кстати, вместо ip адреса в .htaccess можно использовать имя домена. Например. Запретим доступ для всех посетителей, кроме пришедших с www.armadaboard.com :

Order Deny,Allow
Deny from all
Allow from .armadaboard.com
*** Только армадовцы увидят ваш сайт.



Запрета доступа для определенного ip:


Order Allow,Deny
Allow from all
deny from 192.168.8.1
*** Для посетителя с IP 192.168.8.1 доступ на сайт запрещен.
**** Только не спрашивайте у меня где всять список китайских ip Smile

Аналогично, как и в примере выше, можно вместо (а можно и совместно) IP использовать имя домена, т.е. запретить доступ для посетителей, пришедших с определенного сайта:

Order Allow,Deny
Allow from all
deny from .thehun.net
deny from 192.168.8.1
*** Для посетителя с IP 192.168.8.1 и всех, кто пришел с thehun.net доступ на сайт запрещен.


Определенная кодировка на все загружаемые на хост файлы:

CharsetSourceEnc windows-iso-8859-1
*** все файлы будут иметь кодировку windows-iso-8859-1

Можно выставить определенную кодировку лишь на конкретные загружаемые на хост файлы:

AddType "application/x-httpd-php3; charset=windows-iso-8859-1" .html
AddType "application/x-httpd-php3; charset=windows-1251" .htm
*** Устанавливаем кодировку windows-iso-8859-1 на файлы .html и windows-1251 на файлы .htm


Кодировка на все файлы, в которой по умолчанию будет получать их браузер посетителя:

AddDefaultCharset windows-iso-8859-1
*** Все страницы, которые отдает сервер клиенту, будут иметь кодировку windows-iso-8859-1



Перенаправляем посетителей на другой URL (редирект)В .htaccess пишем:

Redirect / http://www.armadaboard.com
*** все посетители будут перенаправлены на www.armadaboard.com



Перенаправление посетителей при запросе определенных страниц:
Защищаемся от всяческих сетевых вирусов и сканеров.
Добавляем в .htaccess:

redirect /scripts http://www.microsoft.com
redirect /_vti_bin http://www.microsoft.com
redirect /MSADC http://www.microsoft.com
redirect /_mem_bin http://www.microsoft.com
redirect /msadc http://www.microsoft.com
RedirectMatch (.*)\cmd.exe$ http://www.microsoft.com$1
*** Любой запрос с адресом /_vti_bin или /scripts будет автоматически перенаправляться на сайт Microsoft.л


Редирект посетителей в зависимости от реффера (ссылающейся страницы):

RewriteCond %{HTTP_REFERER} http://www.sexnarod.ru
RewriteRule ^/sex-video.html$ /nahui.html [L]
*** В данном случае все русские онанисты и извращенцы с форума sexnarod.ru вместо файла sex-video.html получат файлик nahui.html


Можно показывать разные страницы сайта, в зависимости от IP адреса посетителя (редирект по IP)

SetEnvIf REMOTE_ADDR 192.168.8.1 REDIR="redir"
RewriteCond %{REDIR} redir
RewriteRule ^/$ /nahui.html
*** Посетители с айпи адресом 192.168.8.1 будут перенаправляться .htaccess'ом на страницу nahui.html


Ставим запрет на отображение содержимого директории при отсутствии индексного файла:

Options -Indexes
*** Это пригодится, если картинки или видео лежат в определенной папке, например, content на вашем хосте. Дрочер может обрезать урл галлеры например или фришника и увидит список всех графических и видео файлов. Он наверняка будет вам благодарен, однако, такой халявы допускать не следует.

Обработка ошибок c помощью .htaccess:

ErrorDocument 401 /401.html
ErrorDocument 403 /403.html
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html

***
401 - Требуется авторизация - Authorization Required
403 - запрет на доступ - Forbided
404 - запрашиваемый документ (файл, директория) не найден - Not Found
500 - внутренняя ошибка сервера - ошибка скрипта или ошибка в синтаксисе файла .htaccess - Internal Server Error

Можно создать свои страницы ошибок (см. пример выше), а можно редиректить на конкретный url:

ErrorDocument 401 http://www.armadaboard.com/
ErrorDocument 403 http://www.armadaboard.com/
ErrorDocument 404 http://www.armadaboard.com/
ErrorDocument 500 http://www.armadaboard.com/


Всем успехов Smile

ссылки по теме:
Защита от хотлинка (hotlinks) с помощью .htaccess
Коды ответов сервера (коды ошибок)

(c) No
# Ср Мар 01, 2006 10:56 amMr.X_X_X Зарег.: 20.02.2006 ; Сообщ.: 412Ответить с цитатой
Нужная статья. Спасибо.
# Ср Мар 01, 2006 7:30 pmЖека Зарег.: 07.12.2005 ; Сообщ.: 2173Ответить с цитатой
No, а как с помощью .htaccess запретить скачивать картинки ??
# Ср Мар 01, 2006 10:26 pmNo Зарег.: 01.08.2005 ; Сообщ.: 3746Ответить с цитатой
Защита от хотлинка (hotlinks) с помощью .htaccess
# Вс Мар 05, 2006 4:36 ammopkov Зарег.: 04.01.2006 ; Сообщ.: 5Ответить с цитатой
очень полезная вещь.
# Пн Мар 06, 2006 12:27 amLi-Hua Зарег.: 25.12.2005 ; Сообщ.: 11544Ответить с цитатой
из всех статей самая полезная
# Пн Мар 06, 2006 1:09 pmeles Зарег.: 06.03.2006 ; Сообщ.: 3Ответить с цитатой
Хорошая статья, понятная даже новичку.
Но не указано, что файл .htaccess должен быть в unix формате.

И никак не иначе.
# Пн Мар 06, 2006 9:26 pmNo Зарег.: 01.08.2005 ; Сообщ.: 3746Ответить с цитатой
ага. ценное дополнение.
# Пт Мар 10, 2006 9:52 pmleonardo Зарег.: 10.03.2006 ; Сообщ.: 2Ответить с цитатой
Vsem Zdrasti!!!
U menya ne bolshaya problema s ispolzovaniem etogo .htaccess esli voobshe eto vozmojno.
Mne nujno postavit cj na uje rabotaushi site tak chto bi ne poteryat tra'derov. Dlya etogo ya hotel redirecr s mysite.com/main.html na mysite.com/main.shtml y menya eto ne poluchilos rabotaet tolko s mysite.com perevodit na mysite.com/main.shtml a vse ostolnie .html file pri zagruzke pokazivaut oshibki.
Chto ya sdelal ne tak i gde mojet bit oshibka ya zdelal vse tak kak napisano v stat'e vishe.
Spasibo zaranie.
# Пт Мар 10, 2006 11:50 pmNo Зарег.: 01.08.2005 ; Сообщ.: 3746Ответить с цитатой
попробуй так:

Код:
Redirect temp /main.html http://www.mysite.com/main.shtml


запрос к файлу main.html будет редиректиться на http://www.mysite.com/main.shtml

вместо temp допустимые значения: permanent (301 — документ перемещен постоянно), temp (302 — документ перемещен временно), seeother (303 — смотрите другой), gone (410 — убран). Использовать необязательно
# Сб Мар 11, 2006 3:03 amkapon Зарег.: 31.12.2005 ; Сообщ.: 1989Ответить с цитатой
еще вот такая херня..это если кто хочет чтоб у него например при заходе на адрес domain.com юзвери редиректились на www.domain.com, некоторые камрады на местах считают что так правильно делать...

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain\.com
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=permanent,L]
# Сб Мар 11, 2006 10:12 amleonardo Зарег.: 10.03.2006 ; Сообщ.: 2Ответить с цитатой
Bolshoe spasibo :D kajetsa vse rabotaet Shocked
# Вс Мар 12, 2006 9:24 pmNo Зарег.: 01.08.2005 ; Сообщ.: 3746Ответить с цитатой
leonardo, велкам э борд Razz
# Сб Апр 08, 2006 6:38 pmVermin Зарег.: 08.04.2006 ; Сообщ.: 2Ответить с цитатой
"по FTP заливаем его на хост"
Это как?
# Сб Апр 08, 2006 10:22 pmAnnita Зарег.: 22.09.2005 ; Сообщ.: 578Ответить с цитатой
C позволения No кину тебе, Vermin, ссылочку на свою статью
http://www.armadaboard.com/viewtopic.php?t=2834
Новая тема Написать ответ    ГЛАВНАЯ ~ ПОЛЕЗНЫЕ СТАТЬИ
 На страницу 1, 2, 3, 4  След.
Любое использование материалов, размещенных на ArmadaBoard.com, без разрешения владельцев ArmadaBoard.com запрещено.