|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Apache HTTP Server: Настройка .htaccess |
|
|||||
|
|
Apache HTTP Server: Настройка .htaccess
|
|
Дизайнер Сообщения: 410 |
Возможно ли с помощью .htaccess запретить загрузку графики на других хостах(т.е. как на народ.ру)?
Если это делается не через .htaccess, то как? |
|
|
Отправлено: 17:47, 12-10-2003 |
|
Старожил Сообщения: 335
|
Профиль | Сайт | Отправить PM | Цитировать Agent Comanche
С других хостов? Ты это имеешь в виду? |
|
------- Отправлено: 03:08, 13-10-2003 | #2 |
|
Дизайнер Сообщения: 410
|
Профиль | Отправить PM | Цитировать Т.е. у меня например на серве лежит картинка http://site.com/image.jpg
Если я на осзоне прописываю [ img ] http://site.com/image.jpg [ /img ], то здесь картинки не должно быть видно. И нужно сделать один каталог, чтобы с него можно было грузить картинки. Вот что я имел ввиду. ![]() |
|
Отправлено: 10:25, 13-10-2003 | #3 |
|
Старожил Сообщения: 335
|
Профиль | Сайт | Отправить PM | Цитировать Если ты хочешь запретить загрузку картинок с твоего сайта по ссылке, можно отслеживать HTTP_REFERER и запрещать загрузку для вызовов с другого сервера.
|
|
------- Отправлено: 02:26, 14-10-2003 | #4 |
|
Дизайнер Сообщения: 410
|
Профиль | Отправить PM | Цитировать Посмотрел насчет HTTP_REFERER, нашел доку. (ничего не понял
)И вот чего нашел: RewriteEngine on
RewriteCond %{HTTP_REFERER} ^$ [OR]
RewriteCond %{HTTP_REFERER} !^.*sitename\.ru.*$ [NC, OR]
RewriteCond %{HTTP_HOST} !^.*sitename\.ru.*$ [NC]
RewriteRule .*\.(gif|jpg)$ - [F]
И как я понимаю, это будет для всего сайта в целом. А как сделать, чтобы с директории, например http://site.com/temp/ можно было загружать картинки с других серверов? Т.е. со всех нельзя, кроме temp. |
|
|
Отправлено: 10:21, 14-10-2003 | #5 |
|
Старожил Сообщения: 335
|
Профиль | Сайт | Отправить PM | Цитировать Agent Comanche
Здесь можно воспользоваться перловым скриптом:
my $picdir="/usr/local/apache/pics";
my $ref=$ENV{'HTTP_REFERER'};
my $myhost= quotemeta($ENV{'HTTP_HOST'}||$ENV{'SERVER_NAME'});
* * * *if ($ref and $ref !~m|^http://$myhost/|)
* * * *{
* * * * * * * *display_image("copyright.gif");
* * * *}
* * * * else
* * * * {
* * * * * * * *my ($image_file)=$ENV{'PATH_INFO'}=~/^([\w+.]+)$/;
* * * * * * * *display_image($image_file);
* * * * }
sub display_image
{
* * * * my $file=shift;
* * * * my $full_path="$picdir/$file";
* * * * open IMG, $full_path;
* * * * print "Pragma: no-cache\n";
* * * * print *"Content-type: image/gif\n\n";
* * * * binmode;
* * * * my $buffer="";
* * * * while (read(IMG, $buffer, 16_384))
* * * * {
* * * * * * * * *print $buffer;
* * * * *}
* * * * * * * * *close IMG;
}
sub not_found
{
* * * * *print <<END_OF_ERROR;
* * * * *Status: 404 Not Found
* * * * *Content-type: text/html
* * * * *<HTML>
* * * * *<HEAD>
* * * * *<TITLE>Файл не найден</TITLE>
* * * * *</HEAD>
* * * * *<BODY>
* * * * * ...
* * * * *</BODY>
* * * * *</HTML>
* * * * *END_OF ERROR
* * * * *exit;
}
Может я тут чего напутал, поэтому про непонятные места спрашивай подробнее, постараюсь помочь. |
|
------- Отправлено: 03:02, 15-10-2003 | #6 |
|
Дизайнер Сообщения: 410
|
Профиль | Отправить PM | Цитировать Спасибо, Sean Ingumsky
Но чесное слово, понятия не имею, что делать с этим скриптом. И настараживает это строка(для каждой картинки?): Задачу нужно решить наиболее оптимальным способом и меньшим количеством кода. Сегодня затестю тот код для .htaccess, по идее это он. Вопрос теперь в другом, как разрешить загрузку картинок из директории temp для запросов с других серверов? |
|
Отправлено: 10:48, 15-10-2003 | #7 |
|
Дизайнер Сообщения: 410
|
Профиль | Отправить PM | Цитировать Ситуация такая.
Прописал вот это: RewriteEngine on
RewriteCond %{HTTP_REFERER} ^$ [OR]
RewriteCond %{HTTP_REFERER} !^.*site\.region\.ua.*$ [NC, OR]
RewriteCond %{HTTP_HOST} !^.*site\.region\.ua.*$ [NC]
RewriteRule .*\.(gif|jpg)$ - [F]
Цитата:
|
|
|
Отправлено: 00:37, 16-10-2003 | #8 |
|
Старожил Сообщения: 335
|
Профиль | Сайт | Отправить PM | Цитировать Agent Comanche
Кода не так много - два маленьких оператора логического ветвления и две фунуции вывода. А что тут непонятного? Если $ref (переменная окружения с адресом страницы, откуда пришёл запрос) существует, и $ref не является твоим разрешённым хостом, тогда запускается функция disply_image с атрибутом copyright.gif, т.е. отсылается картинка с твоим копирайтом. :-)) |
|
------- Отправлено: 01:20, 16-10-2003 | #9 |
|
Guest |
Дык, все просто. А Вы столько всего нагарадили
![]() <Files "\.(inc|sql|...другие расширения...)$"> order allow,deny deny from all </Files> Спасибо можете не говорить ![]() С наилучшими пожеланиями, Клименко Данил aka Switch *ICQ: 176299915 *Emails: [ [email protected] ] & [ [email protected] ] *Web [ http://www.switch.pp.ru ] Добавлено: Сорри, комменты : Надо это в .htaccess засунуть, а сам файл в директорию, из которой нельзя картинки грузить кинуть. Из других директорий файлы грузиться будут, а из этой - нет. Жаль времени не было... не помню, какой код ошибки выдает ![]() С наилучшими пожеланиями, Клименко Данил aka Switch *ICQ: 176299915 *Emails: [ [email protected] ] & [ [email protected] ] *Web [ http://www.switch.pp.ru ] .HTACCESS - ![]() |
|
Отправлено: 19:35, 16-10-2003 | #10 |
|
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| VPN через HTTP server... | minion | Сетевые технологии | 7 | 22-04-2007 23:19 | |
| [htaccess] redirect https to http | strejiok | Вебмастеру | 9 | 25-11-2006 13:50 | |
| apache htaccess rewrite задержка на исполнение | Вебмастеру | 1 | 20-11-2005 21:03 | ||
| Apache HTTP Server 2.0.45 - 2.0.47 для Win (all) | TimStich | Хочу все знать | 6 | 10-09-2003 04:45 | |
| Настройка apache | kuzya | Сетевые технологии | 1 | 12-05-2003 09:34 | |
|