Бормотухи.НЕТ

Вернуться   Бормотухи.НЕТ > Web-мастеру > Сайтостроение
Расширенный поиск

Сайтостроение В этой категории темы о создании сайтов, их раскрутке, скриптах и т.п

Ответ
 
Опции темы Поиск в этой теме
Старый 09.08.2013, 15:40 Вверх   #1
Пользователь
 
Аватар для Monkey Slut
Monkey Slut вне форума
Доп. информация
Сообщение .htaccess. Инструкция для начинающих [=Дополнение=]

Дополнение этой темы: Ссылка

Не будем терять времени, приступаем!

Сперва давайте разберемся, что же такое файл .htaccess и mod_rewrite.

.htaccess – файл-конфигуратор Apache-серверов.

Mod_rewrite – модуль, используемый веб-серверами для преобразования URL’ов.

.htaccess представляет собой обычный текстовый документ, расширение которого htaccess. Данный файл обычно находится в корне сайта, однако Вы можете создавать и дополнительные .htaccess-файлы для различных директорий Вашего сайта.

Удаление дублей страниц

Простейший и в то же время чаще всего необходимый трюк – редирект дублей одной и той же страницы на основной ее адрес.

Яркий пример – главная страница любого сайта обычно доступна по 4-ем адресам:
http://www.site.ru/
http://site.ru/
http://www.site.ru/index.html
http://site.ru/index.html

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

Решение этой проблемы предельно простое и выглядит так:
Код:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^site.ru
RewriteRule (.*) http://www.site.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://www.site.ru/ [R=301,L]
Таким образом, мы получим редирект всех страниц-дублей на http://www.site.ru/

Меняем расширение html на php

Иногда бывает так, что у Вас статичный веб-сайт, а Вам необходимо, чтобы на нем срабатывал какой-нибудь php-скрипт. Для этого Вам необходимо сказать серверу, чтобы он обрабатывал эту страницу как php-файл.

Код:
AddHandler application/x-httpd-php .html
Этот прием можно использовать и для других расширений файлов:
Код:
AddHandler application/x-httpd-php .xml
AddHandler application/x-httpd-php .asp
Задаем собственные страницы ошибок

ErrorDocument 404 http://www.site.ru/404.php

Индексация директорий и поддиректорий

Чтобы избежать индексации поисковыми системами директорий и поддиректорий, необходимо прописать такую строку, к примеру:
Код:
DirectoryIndex index.php3
Лично я предпочитаю переадресовывать с пустых директорий либо на главную страницу сайта, либо на какую-либо другую подходящую страницу. Например, директорию www.site.ru/images/ можно переадресовать на www.site.ru, а www.site.ru/forum/ на www.site.ru/forum/index.php.

Переадресация страниц

Простое правило, позволяющее переадресовывать с одной страницы на другую:
Код:
redirect 301 /old-page.php http://www.site.ru/new-page.php
Переадресация Вашего фида на Feedburner

Если Вы хотите, чтобы на Ваш RSS-фид подписывались через Feedburner, то используйте следующий код:
Код:
RewriteCond %{HTTP_USER_AGENT} !FeedBurner
RewriteRule ^your-feed\.xml$ http://feeds.feedburner.com/your-feed [R,L]
Защита изображений от скачивания

Очень часто бывает, что веб-мастера нагло копируют контент с Вашего сайта вместе с рисунками, причем рисунки подгружаются с Вашего же сервера. Это создает лишний трафик, что, зачастую, приводит к ряду проблем. Как же защититься от таких веб-мастеров и не помешать поисковым роботам индексировать изображения? Все просто:
Код:
RewriteEngine on
RewriteCond %{HTTP_REFERER} .
RewriteCond %{HTTP_REFERER} !^http://([^.]+\.)?site\. [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]
RewriteCond %{HTTP_REFERER} !msn\. [NC]
RewriteCond %{HTTP_REFERER} !yahoo\. [NC]
RewriteCond %{REQUEST_URI} !^/hotlinker\.gif$
RewriteRule \.(gif|jpg|png)$ /hotlinker.gif [NC,L]
hotlinker.gif – изображение, которое будет отображаться у нерадивых веб-мастеров, вместо истинных изображений. Рекомендую в этом изображении отобразить Ваш логотип и ссылку на Ваш сайт.

Создание ЧПУ (человеко-понятных урлов) с помощью mod_rewrite

C его помощью можно преобразовать, например, www.site.ru/product.php?id=123 в www.site.ru/product/123 следующим образом:
Код:
RewriteEngine on
RewriteRule ^product/([^/\.]+)/?$ product.php?id=$1 [L]
В другом примере преобразуем www.site.ru/script.php?product=123 в www.site.ru/cat/product/123/:
Код:
RewriteRule cat/(.*)/(.*)/$ /script.php?$1=$2
Избавляемся от QUERY_STRING

Некоторые веб-мастера делают ссылки вида www.site.ru/index.php?source=blogstorm, чтобы знать, откуда идут посетители. Из-за этого появляется дублированный контент, от которого надо избавляться:
Код:
RewriteCond %{QUERY_STRING} ^source= RewriteRule (.*) /$1? [R=301,L]
Источник: seoschool.ru

Добавлено через 13 минут 19 секунд

Для чего служит .htaccess?

Набирая адрес в строке браузера, вы получаете на свой компьютер файлы, которые отображает браузер. Управление тем, какие файлы и как вам показывать (пересылать) осуществляет веб-сервер. Наиболее популярных серверов два: IIS и Apache.
Как и любая программа, веб-сервер имеет определенные настройки. Но, у вас, как пользователя Апача может (и скорее всего не будет, если говорить о виртуальном хостинге) прав менять конфигурацию Апача через его главные файлы, действие которых распространяется на всех пользователей этого сервера. Но, вы можете менять некоторые конфигурационные файлы, который распространяют свое действие только на ваш сайт. Один из таких файлов - .htaccess

Это файл гибкой настройки веб-сервера Апач. "Гибкий" обозначает, что как только вы поменяли что-то в этом файле, изменения тут же вступают в силу. С помощью него можно переопределить многие директивы из файла httpd.conf (этот файл является главным конфигурационным файлом сервера Апач и его действия распространяются полностью на всех пользователей данной копии Апача). В случаях, когда у вас нет доступа в файлу настройки Апача (тот же виртуальный хостинг), вам поможет именно этот файл.
Этот файл не доступен веб-пользователю из браузера. Если файл .htaccess расположен в корневой директории сервера, то его действия распространяется на весь сервер, кроме тех папок, где находится другой файл .htaccess (и кроме всех папок "ниже" этой папки со вторым .htaccess).


Пример:
Структура ваших директорий на сервере такая:
|-user
| | | -user1
| | | -user2
| |-data
| | | -data1
| | | -data2 |

Директории user1 и user2 будут вложенными по отношению к директории user. Если мы поместим в директорию www файл .htaccess, то его действие будет автоматически распространяться и на директории user1 и user2.

В директорию data помещаем другой файл .htaccess, по-сравнению, с тем, что находится в директории user. И для директорий data1 и data2 будет действовать файл .htacсess, находящийся в data.

Теперь, в директорию user2 мы помещаем еще один файл .htaccess, который отличен от того, что находится в директории 2мя уровнями выше (это директория user). В итоге, настройки для директории user2 будут определяться только тем файлом .htaccess, который находится в этой директории.

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

Синтаксис .htaccess

Вот обязательной синтаксис, несоблюдение которого приводит к ошибкам сервера:
- пути к файлам (директориям) указываются от корня сервера. Пример: /opt/home/www.astanafoto.com/htdocs/config/.htpasswords
- домены с указанием протокола
Пример:
Код:
Redirect / http://www.site.ru
Файл имеет название именно "точка" htaccess
Должен быть записан в UNIX-формате. Для оболочки FAR, достигается F4 (редактирование файла), Shift+F2 (выбрать "сохранить как UNIX-текст").
Как запретить веб-посетителям читать файлы в директории?

Запрет на все файлы:
Код:
deny from all
Где all обозначает "все".

Разрешить доступ с определенного ip:
Код:
order allow deny
deny from all
allow from <ваш ip>
В данном случае, <ваш ip> обозначает конкретный адрес.
Например:
Код:
order allow deny
deny from all
allow from 192.126.12.199
Запретить доступ с определенного ip:
Код:
order allow deny
deny from all
deny from <ваш ip>
Использование <ваш ip> аналогично для примера выше.

Запрет на группу файлов по маске:
Код:
<Files "\.(inc|sql|...другие расширения...)$">
order allow,deny
deny from all
</Files>
Определяет доступ к файлу по его расширению.
Например запрет на доступ к файлам с расширениям "inc" для веб-посетителей:
Код:
<Files "\.(inc)$">
order allow,deny
deny from all
</Files>
В данном примере сам веб-сервер Апач может обращаться к файлам с таким расширениям.

Запрет на конкретный файл:

Код:
<Files config.inc.php>
order allow,deny
deny from all
</Files>
В данном примере стоит запрет на обращения к файлу config.inc.php.

Пароль на директорию:
Код:
AuthName "Private zone"
AuthType Basic
AuthUserFile /pub/home/твой_логин/.htpasswd
require valid-user
</Files>
Значение AuthName будет выводиться для посетителя и может использоваться для пояснения запроса авторизации. Значение AuthUserFile указывает на место, где хранится файл с паролями для доступа к данной директории. Этот файл создается специальной утилитой htpasswd.exe.

Например в директории, которую защищаем паролем создаем такой .htaccess:
Код:
AuthName "For Registered Users Only"
AuthType Basic
AuthUserFile /pub/site.ru/.htpasswd
require valid-user
</Files>
В этом примере, посетитель при запросе директории, будет читать фразу "For Registered Users Only", файл с паролями для доступа должен лежать в директории /pub/site.ru/ и называться .htapasswd . Директория указывается от корня сервера, если вы неправильно зададите директорию, то Апач не сможет прочитать файл .htpasswd и никто не получит доступа к данной директории.

Пароль только на 1 файл:
Аналогично паролированию директории полностью, можно ставить пароль только на 1 файл.
Пример установки пароля на файл private.zip:
Код:
<Files private.zip>
AuthName "Users zone"
AuthType Basic
AuthUserFile /pub/home/твой_логин/.htpasswd
</Files>
Пароль на группу файлов:
Аналогично, используя <Files "\.(inc|sql|...другие расширения...)$">, можно ставить пароли по маске файлов.
Пример установки пароля на доступ ко всем файла с расширением "sql":
Код:
<Files "\.(sql)$">
AuthName "Users zone"
AuthType Basic
AuthUserFile /pub/home/твой_логин/.htpasswd
</Files>

Проверка прав доступа
Задача: есть каталог a1 и в нем два вложенных каталога a2, a3, введено 2 уровня пользователей. 1 группа имеет доступ только к a1 и a2, 2-я ко всем трем каталогам. Необходимо проводить аутентификацию только 1 раз - при доступе к a1, но при этом соблюдать права на доступ к а2 и а3.
Ник и пароль запрашиваются только при входе на а1 - если у юзвера есть доступ на а2 пароль уже не запрашивается. Если на а3 доступа нет, вылетит табличка "введите пароль".

www.site.ru/a1
www.site.ru/a1/а2
www.site.ru/a1/a3
a1 - общий и вместе с тем закрытый. а2 и а3 только для отдельных личностей.

файл .htaccess для каталога а1:
Код:
AuthName "Input password"
AuthType Basic
AuthUserFile "/pub/home/login/htdocs/clousearea/.htpasswd"
<Files *.*>
require valid-user
</Files>
файл .htaccess для каталога а2:
Код:
AuthName "Input password"
AuthType Basic
AuthUserFile "/pub/home/login/htdocs/clousearea/.htpasswd"
<Files *.*>
require user юзвер1 юзвер2 юзвер3
</Files *.*>
файл .htaccess для каталога а3:
Код:
AuthName "Input password"
AuthType Basic
AuthUserFile "/pub/home/абв/htdocs/clousearea/.htpasswd"
<Files *.*>
require user юзвер1 юзвер4 юзвер5
</Files *.*>

Как сделать перенаправление (редирект) посетителя?
Редирект на другой url:
Что бы сделать перенаправления посетителя на сайт http://site.ru в .htaccess Redirect / http://www.site.ru

Показ разных страниц, в зависимости от IP адреса посетителя:
Код:
SetEnvIf REMOTE_ADDR <нужный ip адрес> REDIR="redir"
RewriteCond %{REDIR} redir
RewriteRule ^/$ /another_page.html
Например, перенаправление посетителей с ip адресом 192.12.131.1 на страницу about_my_sity.html:
Код:
SetEnvIf REMOTE_ADDR 192.12.131.1 REDIR="redir"
RewriteCond %{REDIR} redir
RewriteRule ^/$ /about_my_sity.html
Перенаправление посетителя при запросе определенных страниц:
Это уже для всех сетевых вирусов и сканеров. Теперь любой запрос с адресом /_vti_bin будет автоматически перенаправляться на Microsoft:

Код:
redirect /_vti_bin http://www.microsoft.com
redirect /scripts http://www.microsoft.com
redirect /MSADC http://www.microsoft.com
redirect /c http://www.microsoft.com
redirect /d 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

Как сделать стартовой другую страницу?
Что бы поменять страницу, которая будет показываться при обращении к директории, пишем:
Код:
DirectoryIndex <нужная страница>
Можно указывать несколько страниц.
Код:
DirectoryIndex index.shtml index.php index.php3 index.html index.htm

Как заставить Апач обрабатывать SSI директивы?

SSI позволяют "собирать" страницу из кусочков. В одном кусочке у вас код меню, в другом код верхней части страницы, в третьем - нижней. А посетитель видет обычную страницу, которая состоит из того кода, который входит в ваши кусочки.
Необходимы обязательные установки в httpd.conf:
В блоке, начинающемся с <Directory/> и заканчивающийся </Directory> в строку Options Indexes добавьте Includes.

После, в файле .htaccess пишем:
Код:
AddHandler server-parsed .shtml .shtm .html .htm

Как заставить Апач выполнять в html документах php код?

Иногда бывает полезно "обмануть" посетителя, выдавая ему свои php-скрипты или иные файлы, как html файлы. Реально используется для индексации поисковой системой Rambler php-скриптов. Некоторые делаю мелкие фишки, вроде того, что дают фалам расширения совпадающие с какими-либо "знаковыми" именами. Например, на сайте www.osg.ru используются файлы с расширением osg: index.osg, script.osg и т.п.

Код:
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html .phtml
При большой посещаемости сервера может вызвать тормоза. Спрашивайте у админа.


Как самому обрабатывать ошибки Апача?

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

Предположим, что у вас вся графика, используемая на сайте находится в директории img. Посетитель может набрать в адресной строке браузера эту директорию и увидеть список всех ваших графических файлов. Конечно, это не нанесет вам урона, но можно и не дать такого просмотра посетителю. В .htaccess пишем:
Код:
Options -Indexes

Можно ли указать кодировку на все файлы, в которой по умолчанию получает документы браузер?

На заре интернета и зарождения браузеров, часто была ситуация, что браузер не мог автоматически определить, в какой из русских кодировок написан документ и в браузер выдавалась какая-то каша. Для избежания этого указываем, что все отдаваемые страницы будут иметь кодировку windows-1251:
Код:
AddDefaultCharset windows-1251

Можно ли указать кодировку на загружаемые файлы?

При загрузке посетителем файла на сервер, возможна перекодировка его - указываем, что все получаемые файлы будут иметь кодировку windows-1251:
Код:
CharsetSourceEnc windows-1251
=========
Использованы материалы:
=========

Добавлено через 7 минут 46 секунд

.htaccess – защити себя и свой сайт!

Прочитав эту статью, вы сможете вывести личную безопасность вашего сайта на новый уровень.

Переопределение сообщений об ошибках

Одной из полезных возможностей, предоставляемых Apache, является подмена стандартных сообщений об ошибках веб-сервера своими. Для этого служит директива ErrorDocument.
Код:
ErrorDocument 403 «<BODY><H1>Forbidden</H1>
ErrorDocument 404 /errors/404.html
Внимание: при указании непосредственно HTML кода в данной директиве кавычки ставятся только в начале строки (см. пример)!
Пути к файлам указываются относительно корневого каталога данного веб-хоста, а не относительно файловой системы (правильно: /errors/404.html; неправильно: /var/www/myhost/html/errors/404.html).

Парольная защита

Если Вам нужно защитить часть содержимого Вашего сайта от посторонних, можно воспользоваться директивами семейства Auth. Они заставляют сервер спрашивать у клиента имя пользователя и пароль для доступа к содержимому каталога, в котором размещен .htaccess, а также к его подкаталогам.

Для этого необходимо создать файл с паролями (обычно называется .htpasswd) и разместить его в безопасном месте (например, на уровень выше каталога, который является корневым для Вашего хоста; к примеру, если сайт размещен в /home/user/html, то .htpasswd лучше положить в /home/user). Для создания .htpasswd используйте утилиту htpasswd из комплекта Apache.

Для установки защиты на некий каталог необходимо разместить в нем файл .htaccess следующего вида:
Код:
AuthUserFile /home/user/.htpasswd
AuthName “Secure Zone”
AuthType Basic
Require valid-user
AuthUserFile указывает путь к файлу с паролями. AuthName определяет так называемый ‘realm’ («мир»); обычно указывается, к чему осуществляется доступ (например, ‘Site Management Tools’, ‘Billing Information’ и т.п.)
AuthType определяет тип авторизации; практически всегда используется Basic (кроме него доступен тип Digest, но его мы рассматривать не будем).

Наконец, Require определяет набор условий, по которым определяется, кто из перечисленных в .htpasswd пользователей имеет доступ к данному каталогу сайта. ‘valid-user’ подразумевает, что доступ может получить любой пользователь после ввода пароля; вместо valid-user можно через пробел перечислить имена пользователей, которым предоставляется доступ.

Включение поддержки SSI

Если ssi по умолчанию не включен (или вы хотите добавить другой тип файлов, для того, чтобы там обрабатывались директивы ssi) и настройки вебсервера позволяют использовать следующие директивы, то пропишите в .htaccess эти строчки:
Код:
AddType text/html .shtml .htm .html
AddHandler server-parsed .shtml
Options +Includes

Блокировка по IP адресам


Средствами файла .htaccess можно ограничить доступ к ресурсам сайта по IP адресам; например, разрешить доступ к медиа-архиву только пользователям из локальной сети, или запретить какому-либо хосту или сети доступ к какому-либо контенту.

Синтаксис для этих директив таков:
Код:
Order Deny,Allow (или Allow,Deny – в зависимости от того, что требуется)
Deny from all (или адрес хоста)
Allow from all (или адрес хоста)
Например,
Код:
Order Deny,Allow
Deny from all
Allow from 192.168.0.
Allow from .localnet
Allow from admin.somewhere.in.the.net
вызывает отказ в доступе для всех, кроме сети 192.168.0.0/24, всех хостов, DNS имя которых содержит .localnet, а также хоста, DNS имя которого admin.somewhere.in.the.net.

Если нужно запретить доступ группе хостов, используется Allow,Deny:
Код:
Order Allow,Deny
Allow from all
Deny from 192.168.1.
Deny from hackers.are.everywhere.in.the.net
Принцип прост. По Order определяется порядок обработки правил allow/deny; если мы возьмем второй пример, то сначала сервер обработает правило allow from all, а затем хосты, которые прошли это правило, подвергаются проверке правилом deny; при этом все хосты из сети 192.168.1.0/24 и хост hackers.are.everywhere.in.the.net не проходят эту проверку и не получают доступа.

Более сложные применения:
Код:
<FilesMatch «.(txt|dat)$»>
Order Deny,Allow
Deny from all
</Files>
– данное правило запретит любым хостам доступ к файлам с расширениями .txt и .dat (например, в них могут храниться внутренние данные скриптов).

Блокировка по реферреру

Посредством использования модуля mod_rewrite и файла .htaccess можно добиться запрета доступа к Вашим ресурсам, если клиент пришел с какого-то определенного сайта (блокировка по referer’у).

Для этого требуются следующие директивы .htaccess:
Код:
RewriteEngine on
# Options +FollowSymlinks # – раскомментировать, если при установке этого .htaccess появляется ошибка 500, Internal Server Error
RewriteCond %{HTTP_REFERER} badsite.com [NC]
RewriteRule .* – [F]
Или, если нужно перечислить больше одного сайта,
Код:
RewriteEngine on
# Options +FollowSymlinks # – раскомментировать, если при установке этого .htaccess появляется ошибка 500, Internal Server Error
RewriteCond %{HTTP_REFERER} badsite.com [NC,OR]
RewriteCond %{HTTP_REFERER} anotherbadsite.com
RewriteRule .* – [F]
Если нужно запретить доступ напрямую со всех хостов, кроме определенных, набор правил будет выглядеть примерно так:
Код:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www.)?mydomain.ru(/)?
RewriteCond %{HTTP_REFERER} !^http://(.*).mydomain.ru(/)?
RewriteRule .*.(gif|jpg|jpeg|png)$ – [F]
Изменение индекс-страницы

Задать/Изменить индексный файл и последовательность их обработки можно директивой DirectoryIndex
Например:
Код:
DirectoryIndex photo.php photo.php5 index.php
Перенаправления

Для организации редиректа средствами .htaccess достаточно строки вида:
Код:
Redirect /old_directory/old_file.html http://your_new_site.com/new_directory/new_file.html
если нужно редиректить все содержимое подкаталога:
Код:
Redirect /old_directory http://bestcoding.info/new_directory/
редирект для всего сайта:
Код:
RewriteEngine On
RewriteRule (.*) http://bestcoding.info
Запрет обращений к .htaccess

Защитить их можно следующим образом, однако, это по умолчанию уже есть в httpd(2).conf, то есть в самой конфигурациии веб-сервера.
Код:
<Files ~ «^\.ht»>
Order allow,deny
Deny from all
</Files>
Добавление MIME-типов

Для добавления MIME-типов используется директива
Код:
AddType mime/type extension
Например,
Код:
AddType application/x-bittorrent torrent
Используется она в тех случаях, когда конфигурация по умолчанию заставляет сервер передавать документы не так, как требуется; например, многие серверы по умолчанию подразумевают тип text/plain, и бинарный файл (например, rar-архив), скачанный с такого сервера, вполне может оказаться «битым».

Запрет прямых ссылок на ресурсы

Если Вы хотите избежать так называемого «хотлинкинга» – прямых ссылок на Ваши ресурсы с других сайтов – Вам опять-таки поможет .htaccess в комбинации с mod_rewrite.

Для начала рассмотрим, чем плох хотлинкинг. Например, некий сайт размещает у себя изображение, находящееся на Вашем сайте, просто указав его в тэге <img src>. При этом все обращения к такой странице вызовут скачивание данного изображения с Вашего сайта; таким образом, будет расходоваться Ваш траффик и пропускная способность канала сервера, а посетители чужого веб-сайта увидят изображение, хранящееся у Вас, без соответствующего контекста.

Как же бороться с подобной практикой?

Рассмотрим следующий пример части файла .htaccess:
Код:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?bestcoding.info.com/.*$ [NC]
RewriteRule \.(js|css)$ – [F]
Данный код запрещает обращения к .js и .css файлам (скрипты javascript и описания Cascading Style Sheets), если они производятся не с Вашего сайта.

Другой пример:
Код:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?bestcoding.info/.*$ [NC]
RewriteRule \.(png|gif|jpg|jpeg)$ http://bestcoding.info/youaretheworst.gif [R,L]
При обращении извне к изображениям, хранящимся на вашем сайте, вместо самих изображений будет отображаться содержимое файла youaretheworst.gif.

Запрет вывода списка файлов

Apache (при включении соответствующих опций) умеет отображать список файлов в каталоге, если в нем нет ни одного из перечисленных в DirectoryIndex файлов. Часто эта опция включена по умолчанию, что может быть неприемлемо.
Строчка
Код:
Options -Indexes
отключит этот режим.


Однако иногда может, наоборот, понадобиться разрешить просматривать список файлов, при этом исключив из него их часть. Для этого служит IndexIgnore.
Например,
Код:
IndexIgnore *.php* *.pl *.html *.shtml
разрешает вывод списка всех файлов, кроме PHP и Perl скриптов, а также HTML документов.
  Ответить с цитированием
3 пользователя(ей) сказали cпасибо:
Старый 15.08.2013, 18:28 Вверх   #2
Новичок
 
Аватар для Nicoss
Nicoss вне форума
Доп. информация
По умолчанию

Спасибо, очень развернуто и по пунктам.
  Ответить с цитированием
Старый 12.05.2015, 10:41 Вверх   #3
Новичок
 
Аватар для C0De-S
C0De-S вне форума
Доп. информация
По умолчанию

Как насчет примера при смене языка!?
  Ответить с цитированием
Старый 07.03.2020, 21:42 Вверх   #4
Опытный пользователь
 
Аватар для saphoe_ru
saphoe_ru вне форума
Доп. информация
По умолчанию

А как насчет примера когда нужно запретить вот такое:

Код:
site.ru/faq.php/QvudUXT			
site.ru/faq.php/*		
site.ru/faq.php/928715
  Ответить с цитированием
Старый 10.03.2020, 21:41 Вверх   #5
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
По умолчанию

Цитата Сообщение от saphoe_ru Посмотреть сообщение
А как насчет примера когда нужно запретить вот такое:
Если нужно запретить конкретный файл - то можно добавить его в полный запрет доступа или редирект. Конкретные 3 запроса можно отправить в запрет доступа. Насколько я помню, там есть еще маски для запросов.
  Ответить с цитированием
Cказали cпасибо:
Старый 11.03.2020, 14:47 Вверх   #6
Опытный пользователь
 
Аватар для saphoe_ru
saphoe_ru вне форума
Доп. информация
По умолчанию

Serberg, проблема в том, что на конце буквы и цифры меняются. То есть запретив конкретно эти три файла, я все равно вижу их, но уже в другой комбинацией букаф и цифр. Поэтому здесь я чета туплю. А инфы в интернете по этому поводу не нашла(
  Ответить с цитированием
Старый 11.03.2020, 20:38 Вверх   #7
Просто блондинка
 
Аватар для Luvilla
Luvilla вне форума
Доп. информация
По умолчанию

Цитата Сообщение от saphoe_ru Посмотреть сообщение
проблема в том, что на конце буквы и цифры меняются.
кем?
удалите файл faq.php, уберите из фраз и шаблонов ссылки на него и спите спокойно
Амиинь
  Ответить с цитированием
3 пользователя(ей) сказали cпасибо:
Старый 13.03.2020, 23:54 Вверх   #8
Опытный пользователь
 
Аватар для saphoe_ru
saphoe_ru вне форума
Доп. информация
По умолчанию

Цитата Сообщение от Luvilla Посмотреть сообщение
кем?
удалите файл faq.php, уберите из фраз и шаблонов ссылки на него и спите спокойно
Амиинь
помогглллоооо
  Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 07:11. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2020, vBulletin Solutions, Inc. Перевод: zCarot
 

Время генерации страницы 0.06483 секунды с 12 запросами