Score:0

คำขอที่ไม่ถูกต้องของ Nginx 400 และไม่มีอะไรน่าสนใจในบันทึก

ธง cn

ฉันไม่สามารถหยุดรับ 400 คำขอที่ไม่ถูกต้อง หลังจากการค้นคว้าบางอย่าง ฉันพบว่านั่นหมายความว่าคำขอมีส่วนหัวที่ไม่ถูกต้องเนื่องจากการกำหนดค่าที่ไม่ถูกต้อง

นี่คือของฉัน nginx.conf ไฟล์:

ผู้ใช้ nginx;
worker_processes อัตโนมัติ

เหตุการณ์ {
    worker_connections 1,000;
}

error_log /var/log/nginx/error.log เตือน;
pid /var/run/nginx.pid;

http {
    รวม /etc/nginx/mime.types;
    แอปพลิเคชัน default_type/octet-stream;

    ปิด server_tokens;

    set_real_ip_ จาก 192.168.0.0/16;
    set_real_ip_ จาก 172.16.0.0/12;
    set_real_ip_ จาก 10.0.0.0/8;
    real_ip_header X-ส่งต่อ-สำหรับ;
    real_ip_recursive บน;

    log_format main '$remote_addr - $remote_user "$request"'
                      '$สถานะ $body_bytes_sent $http_host "$http_referer"'
                      '"$http_user_agent"';

    access_log /var/log/nginx/access.log หลัก;

    ส่งไฟล์บน;
    #tcp_nopush บน;

    keepalive_timeout 65;

    เปิด gzip;
    gzip_disable "msie6";
    gzip_vary บน;
    gzip_proxyed ใด ๆ ;
    gzip_comp_level 6;
    gzip_buffers 16 8k;
    gzip_http_version 1.1;
    ข้อความ gzip_types/ข้อความล้วน/แอปพลิเคชัน css/แอปพลิเคชัน json/ข้อความจาวาสคริปต์/แอปพลิเคชัน xml/แอปพลิเคชัน xml/xml+rss ข้อความ/จาวาสคริปต์;

    รวม /etc/nginx/conf.d/*.conf;
    รวม /etc/nginx/sites-enabled/*.conf;
}

นี่คือผลลัพธ์ของการบันทึกเมื่อฉันได้รับการร้องขอไปยังเซิร์ฟเวอร์:

" ขณะอ่านโปรโตคอล PROXY ลูกค้า: 172.26.0.5 เซิร์ฟเวอร์: 0.0.0.0:80
2021/09/16 11:08:07 [ข้อผิดพลาด] 8#8: *8 ส่วนหัวเสีย: "GET /favicon.ico HTTP/1.1
Pragma: ไม่มีแคช
การควบคุมแคช: ไม่มีแคช
วินาที-ch-ua: "Google Chrome";v="93", " ไม่ใช่แบรนด์";v="99", "Chromium";v="93"
วินาที-ch-ua-มือถือ: ?0
user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML เช่น Gecko) Chrome/93.0.4577.82 Safari/537.36
แพลตฟอร์ม sec-ch-ua: "Windows"
ยอมรับ: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
sec-fetch-site: แหล่งกำเนิดเดียวกัน
โหมดดึงข้อมูลวินาที: ไม่มีคอร์
วินาทีดึงข้อมูลปลายทาง: รูปภาพ
ผู้อ้างอิง: https://localhost/
ยอมรับการเข้ารหัส: gzip, deflate, br
ภาษาที่รองรับ: en-US,en;q=0.9
โฮสต์: localhost
X-ส่งต่อ-สำหรับ: 172.26.0.1

พร็อกซีย้อนกลับ nginx นี้ทำงานบนคอนเทนเนอร์นักเทียบท่าดังต่อไปนี้ ไฟล์นักเทียบท่า:

จาก nginx:1.16

ENV DOCKER_IMAGE nginx
ENV DOCKER_NAME nginx
ENV TZ แอฟริกา/ตูนิส

ชุด RUN -x && \
    # ตัวช่วยเล็ก ๆ เพื่อโหลดการกำหนดค่า nginx ใหม่
    printf '#!/bin/bash\n/usr/sbin/nginx -s reload\n' >> /usr/local/bin/nginx-reload && \
    chmod +x /usr/local/bin/nginx-reload && \
    # ลบการกำหนดค่าเซิร์ฟเวอร์เริ่มต้น nginx
    rm /etc/nginx/conf.d/default.conf

สำเนา ./conf/ /etc/

ENV WORKER_PROCESSES อัตโนมัติ
ENV WORKER_CONNECTIONS 1024

ENV SERVER_NAME โลคอลโฮสต์

Score:0
ธง th

เดอะ nginx.conf ไม่มีการกำหนดค่าว่าจะทำอย่างไรกับคำขอ คุณมีการกำหนดค่าอื่นหรือไม่ เช่น ใน /etc/nginx/conf.d หรือใน /etc/nginx/sites-enabled.

คุณสามารถใช้ เซิร์ฟเวอร์ บล็อคด้วย ที่ตั้ง บล็อกเพื่อกำหนดค่าพร็อกซี หรือคุณสามารถใช้ ราก directive เพื่อตั้งค่าเป็นไดเร็กทอรีเพื่อส่งไฟล์ออกไป

ดังนั้นเพื่อช่วยให้คุณระบุสิ่งที่คุณต้องการทำกับ nginx ได้ดีขึ้น

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา