Score:0

การตั้งค่า nginx reverse proxy - 500 Internal Server Error

ธง mp

ฉันกำลังพยายามตั้งค่าพร็อกซีเซิร์ฟเวอร์ย้อนกลับโดยใช้ nginx 1.20.1 บน Fedora Server 35 แต่ทุกอย่างที่ฉันได้ลองจนถึงตอนนี้ส่งผลให้เกิดข้อผิดพลาด:

[root@proxy nginx]# curl -I -H "โฮสต์: www.example.com" http://10.0.19.1/
ข้อผิดพลาดเซิร์ฟเวอร์ภายใน HTTP/1.1 500
เซิร์ฟเวอร์: nginx/1.20.1
วันที่: วันพุธที่ 10 พฤศจิกายน 2021 19:54:39 ​​GMT
ประเภทเนื้อหา: text/html; ชุดอักขระ = UTF-8
การเชื่อมต่อ: มีชีวิตอยู่
X-ขับเคลื่อนโดย: PHP/8.0.12

10.0.19.1 เป็นที่อยู่ของเซิร์ฟเวอร์ nginx และ 10.0.20.1 เป็นเซิร์ฟเวอร์ Apache ที่ฉันพยายามใช้พร็อกซี ถ้าฉันเรียกใช้คำสั่ง curl เดียวกันกับด้านบน แต่ใช้ 10.0.20.1 สำหรับ URL ก็ใช้ได้ดี ดังนั้นฉันจึงคิดว่าปลอดภัยที่จะตัดปัญหาการเชื่อมต่อระหว่างสองเซิร์ฟเวอร์และปัญหาใดๆ กับโฮสต์ Apache บันทึกข้อผิดพลาด nginx ว่างเปล่า

nginx -t ไม่พบปัญหากับไฟล์ปรับแต่ง (ทำซ้ำด้านล่าง) ตอนนี้ฉันยังตั้งค่า SELinux ให้อนุญาตเพื่อกำจัดสิ่งนั้นที่เป็นสาเหตุ

ฉันสร้างการกำหนดค่าเซิร์ฟเวอร์อย่างง่าย (ไม่ใช่พร็อกซี) เพื่อทดสอบ และใช้งานได้ดี ดังนั้นเนื่องจากเพิ่งเริ่มใช้ nginx ฉันรู้สึกว่านี่อาจเป็นปัญหาเล็กน้อยกับไฟล์ proxy.conf ของฉัน

nginx.conf:

ผู้ใช้ nginx;
worker_processes อัตโนมัติ
error_log /var/log/nginx/error.log เตือน;
pid /run/nginx.pid;

รวม /usr/share/nginx/modules/*.conf;

เหตุการณ์ {
    worker_connections 1024;
}

http {
    log_format main '$remote_addr - $remote_user [$time_local] "$request"'
                      '$สถานะ $body_bytes_sent "$http_referer"'
                      '"$http_user_agent" "$http_x_forwarded_for"';

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

    ส่งไฟล์บน;
    tcp_nopush บน;
    tcp_nodelay บน;
    keepalive_timeout 65;
    types_hash_max_size 4096;

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

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

conf.d/proxy.conf:

เซิร์ฟเวอร์ {
    ฟัง 80;
    server_name www.example.com;
    ที่ตั้ง / {
        proxy_pass http://10.0.20.1;
    }
}
Richard Smith avatar
jp flag
เซิร์ฟเวอร์ใดที่ใช้ PHP? ข้อผิดพลาด 500 มาจาก PHP ดังที่คุณเห็นในการตอบสนองจาก `curl`
us flag
ดูที่ `error.log` ของเว็บเซิร์ฟเวอร์พร็อกซี
user3623992 avatar
mp flag
พร็อกซีเซิร์ฟเวอร์ไม่ได้รับคำขอเลย - บันทึกข้อผิดพลาดและบันทึกการเข้าถึงว่างเปล่าทั้งคู่
user3623992 avatar
mp flag
ฉันสันนิษฐานว่า (ฉันรู้ ไม่ดี) ที่ส่วนหัวของ PHP มีอยู่เพียงเพราะฉันติดตั้ง nginx จาก Fedora repo และติดตั้ง PHP เป็นการพึ่งพา ฉันกำลังพูดในฐานะคนที่ไม่มีประสบการณ์เกี่ยวกับ nginx มาก่อน

โพสต์คำตอบ

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