Puncte:0

Cloudflare în fața Nginx Reverse - redirecționează utilizatorii cu anumite IP către o pagină specială

drapel gr

Rulez un proxy invers nginx în fața paginii web. În fața acestui reverse proxy nginx rulează și cloudflare reverse proxy.

Acum încerc să redirecționez utilizatorii cu anumite adrese IP către o pagină web specială. Încerc să fac asta din proxy-ul invers nginx, fără noroc :/

nginx.conf

    utilizator www-date;
worker_proceses auto;
pid /run/nginx.pid;
includ /etc/nginx/modules-enabled/*.conf;
worker_rlimit_nofile 30000;

evenimente {
    conexiuni_muncitor 2048;
    # multi_accept on;
}

http {

    ##
    # Setări de bază
    ##

    sendfile activat;
    tcp_nopush activat;
    tcp_nodelay activat;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    # server_tokens off;

    # server_names_hash_bucket_size 64;
    # server_name_in_redirect off;

    includ /etc/nginx/mime.types;
    aplicație de tip_default/octet-stream;

    ##
    # Setări SSL
    ##

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Eliminarea SSLv3, ref: POODLE
    ssl_prefer_server_ciphers activat;

    ##
    # Setări de înregistrare
    ##

    access_log off;
    error_log /var/log/nginx/error.log;

    ##
    # Setări Gzip
    ##

    gzip on;

    # gzip_vary on;
    # gzip_proxied orice;
    # gzip_comp_level 6;
    # gzip_buffers 16 8k;
    # gzip_http_version 1.1;
    # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

    ##
    # Configurații gazdă virtuală
    ##

    includ /etc/nginx/conf.d/*.conf;
    includ /etc/nginx/sites-enabled/*;

set_real_ip_de la 103.21.244.0/22;
set_real_ip_de la 103.22.200.0/22;
set_real_ip_de la 103.31.4.0/22;
set_real_ip_de la 104.16.0.0/12;
set_real_ip_de la 108.162.192.0/18;
set_real_ip_de la 131.0.72.0/22;
set_real_ip_de la 141.101.64.0/18;
set_real_ip_de la 162.158.0.0/15;
set_real_ip_de la 172.64.0.0/13;
set_real_ip_de la 173.245.48.0/20;
set_real_ip_de la 188.114.96.0/20;
set_real_ip_de la 190.93.240.0/20;
set_real_ip_de la 197.234.240.0/22;
set_real_ip_de la 198.41.128.0/17;
set_real_ip_from 2400:cb00::/32;
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 2c0f:f248::/32;
set_real_ip_from 2a06:98c0::/29;
real_ip_header CF-Conectare-IP;

Server {
    if ($adresă_la distanță = 1.2.3.4) {
        rescrie ^ http://www.website.com/noscrape.htm;
    }
}

}

Aceasta este conf. site-ul meu nginx:

Server {
    asculta 80;
    nume_server bla.com;

    Locație / {
        proxy_pass http://bla.com:80;
    access_log off;
# proxy_cache STATIC;
# proxy_cache_valid 200 1d;
# proxy_cache_use_stale error timeout invalid_header actualizare
# http_500 http_502 http_503 http_504;
client_max_body_size 20M;

    }

}

Aveți idee cum pot face asta sau nu este posibil din cauza cloudflare?

Richard Smith avatar
drapel jp
Se pare că ați adăugat un bloc redundant „server”. Declarația `if` trebuie să fie **în interiorul** blocului `server` care gestionează cererea, probabil `bla.com`.
drapel gr
Mulțumesc Richard, asta a fost problema! Funcționează acum!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.