ฉันกำลังพยายามตั้งค่าพร็อกซีเซิร์ฟเวอร์ย้อนกลับโดยใช้ 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;
}
}