Jump to content

Запретить вставку картинок с других ресурсов в Nginx


Recommended Posts

  • 2 weeks later...
location ~* ^.+.(jpg|jpeg|gif|png)$ {
root /path/to/public_html;
valid_referers none blocked server_names ~(rghost|upwap|и т.д.);
if ($invalid_referer) {
return 403;
}
}

В конфиг nginx этот код внесите.

Только rghost и т.д. замените на сайты, с которых идет копия картинок.

И путь root /path/to/public_html смените до своего сайта.

Link to comment
Share on other sites

server {
        listen 80;
        server_name cosmoeng.ru;

        access_log /var/log/nginx/website.access_log;
        error_log /var/log/nginx/website.error_log;

        root /var/www/cosmoeng.ru;
	index index.html index.php;


        location / {
                try_files $uri $uri/ /index.php?q=$uri&$args;
        }

        location ~ .php {
                fastcgi_pass  unix:/tmp/fastcgi.socket;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

        location ~ .(tpl|xml|log)$ {
                deny all;
        }
        if ($http_referer !~ "^$"){
        set $rule_0 1$rule_0;
        }
        if ($http_referer !~* "^http(s)?://(www.)?cosmoeng.ru"){
        set $rule_0 2$rule_0;
        }
        if ($rule_0 = "21"){
        return 403;
        break;
       }
      }

перед последней скобкой  ?или 

так мне  нужно запретить вообще чтобы пользователи не могли с разных сайтов грузить картинки 

Link to comment
Share on other sites

valid_referers none blocked server_names ~(rghost|upwap|и т.д.)  - ну вот  это же не правильно - сегоджня они найдут  в другом месте картинки  - мне нужно запре6тить со всех ресурсов
Link to comment
Share on other sites

valid_referers none blocked server_names ~(rghost|upwap|и т.д.)  - ну вот  это же не правильно - сегоджня они найдут  в другом месте картинки  - мне нужно запре6тить со всех ресурсов

А ты внимательно читай, что я написал тут

Link to comment
Share on other sites

zhenyasim, это он понял, и сказал, что другой хост. изобр найти могут. Ему надо что бы прям со всего инета картинки вставлять нельзя было 

Link to comment
Share on other sites

все онлайн конверторы  файл хитасис  из апачи тоже не дают никаких результатов   ( вот еще один  )

__www.anilcetin.com/

суть   они все же позволяют вставлять    картинки  - брал хитасис  - конвертил    а потом пихал  

server {
        listen 80;
        server_name cosmoeng.ru;

        access_log /var/log/nginx/website.access_log;
        error_log /var/log/nginx/website.error_log;

        root /var/www/cosmoeng.ru;
	index index.html index.php;


        location / {
                try_files $uri $uri/ /index.php?q=$uri&$args;
        }

        location ~ .php {
                fastcgi_pass  unix:/tmp/fastcgi.socket;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

        location ~ .(tpl|xml|log)$ {
                deny all;
        }
        ВОТ СЮДА пихал  код 
      }
Link to comment
Share on other sites

Ну что же попробую еще раз описать проблему потому  что  гуггл не дал  однозначного ответа  ! 

Итак  хочу чтобы пользователи не захламляли форум а грузили картинки именно на форум ( на мой сервер  ) 

В основном конфиге  у меня ничего не прописано 

etc/nginx/nginx.conf

Он выглядит так  

 # Размер данных принимаемых post запросом
   client_max_body_size 15m;
   tcp_nopush on;
   tcp_nodelay on;
   keepalive_timeout 65;
   types_hash_max_size 2048;
   # Не говорим врагу версию nginx
   server_tokens off;
   include /etc/nginx/mime.types;
   default_type application/octet-stream;
   # Настройки логирования
   access_log /var/log/nginx/access.log;
   error_log /var/log/nginx/error.log;
   # Настройки компрессии
   gzip on;
   gzip_disable "msie6";
   gzip_vary on;
   gzip_proxied any;
   gzip_comp_level 6;
   gzip_buffers 16 8k;
   gzip_http_version 1.1;
   gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

   include /etc/nginx/conf.d/*.conf;
}

Виртуальный хост выглядит так 

server {
        listen 80;
        server_name cosmoeng.ru;

        access_log /var/log/nginx/website.access_log;
        error_log /var/log/nginx/website.error_log;

        root /var/www/cosmoeng.ru;
	index index.html index.php;


        location / {
                try_files $uri $uri/ /index.php?q=$uri&$args;
        }

        location ~ .php {
                fastcgi_pass  unix:/tmp/fastcgi.socket;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

        location ~ .(tpl|xml|log)$ {
                deny all;
        }
		 #location ~ .(jpg|png|gif)$ {
         location /wp-content {
         valid_referers server_names *.cosmoeng.ru;
          if ($invalid_referer) {
            return 403;
        }
    }
}

И находится он у меня по этому пути   

etc/nginx/conf.d/cosmoeng.ru.conf

Вопрос номер один  -  нужно ли прописывать виртуальный хост в основной конфиг ? 

Вопрос номер два  -  что прописать  конкретно чтобы пользователь не мог  загружать картинки со сторонних ресурсов  - только без демагогии) и криках  о том что он занят )))

Link to comment
Share on other sites

server {
        listen 80;
        server_name cosmoeng.ru;

        access_log /var/log/nginx/website.access_log;
        error_log /var/log/nginx/website.error_log;

        root /var/www/cosmoeng.ru;
  index index.html index.php;

        location / {
                try_files $uri $uri/ /index.php?q=$uri&$args;
        }

        location ~ .php {
                fastcgi_pass  unix:/tmp/fastcgi.socket;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

        location ~ .(tpl|xml|log)$ {
                deny all;
        }
}

привел виртуальный хост   к правильному знаменателю   (а  то кусок нижнего кода отправлял всех к несушествующей папке  )

Link to comment
Share on other sites

post-3791-0-66616200-1394100653_thumb.jp

 


Наймите администратора и пусть вам за деньги делает всё. И сервер пусть за деньги настраивает под ваши нужды.

если вы не знаете     -это не значит что никто не знает  !- а что касается  на нанять) - то мне есть кого нанять)  

Hepster, если бы такое было- в гугле бы было. Наймите модераторов и не парьтесь  

все настолько тривиально    - что  тот кого нанять ))) будет ржать как лошадь ))  

И вообще вам не надоело    - слово Нанят  - мне кажется у вас двоих это слово паразит )   прошу Вас  если не сложно  - не заходите больше в эту   ветку  форума  со  словами нанять оплатить  купить   - как же вы мне дороги )) складывается такое ощущение    что здесь одни ботоводы ) 

Link to comment
Share on other sites

Как я понял, это защита от хотлинкинга. В контрольной панели хостинге есть настройки? Если да, то и придумывать нечего.

Link to comment
Share on other sites

hawk2012,  ну вот я и есть контрольная панель ))) зачем она  для одного сайта   и одного сервера ?

Link to comment
Share on other sites

Hepster, хотлинкинг это такая чтука которая позволит блокировать входящие ссылки с других сайтов  и на других сайтах тоже. Ее обычно используют чтобы контент не тырили.

Link to comment
Share on other sites

hawk2012,  спасибо  за ответ  но  ! это не много другое  - давайте более подробно - если не трудно ! - я переставил все прописи в свой виртуальный хост - если не трудно гляньте их   - и они не работали - как вставлял картинки так и вставляю - конфиги я выложил и свои вопросы в том числе куда вставляю - может это дело в том что у меня  дебиан 7 - 10 страниц поисковой системы гугла меня забанили ) 

Link to comment
Share on other sites

Hepster, здесь не в системе дело.

Что касается картинок - я бы посоветовал как и ранее советовали найти модератора, но и в .htaccess написать запрет на внешние хранилища картинок. Жалко что я ничем помочь не могу - не сталкивался с этим.

Link to comment
Share on other sites

hawk2012,  ну вот вы и доказали свою не состоятельность ! в теме   - спасибо за помощь ! 

но и в .htaccess написать запрет на внешние хранилища картинок.
Link to comment
Share on other sites

)))) да я тоже  вроде  - суть  вы уж меня простите   за резкий тон   htaccess  - ваще не пашет   в  

 Nginx
Link to comment
Share on other sites

Hepster, да я знаю что сейчас несколько напряженная обстановка в связи с тем что ответ еще не найден

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Ваша ссылка была автоматически строена.   Отображать как обычную ссылку

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...