Tôi đang cố gắng thiết lập máy chủ proxy ngược bằng nginx 1.20.1 trên Fedora Server 35, nhưng mọi thứ tôi đã thử cho đến nay đều dẫn đến lỗi:
[root@proxy nginx]# curl -I -H "Máy chủ: www.example.com" http://10.0.19.1/
HTTP/1.1 500 Lỗi Máy chủ Nội bộ
Máy chủ: nginx/1.20.1
Ngày: Thứ tư, ngày 10 tháng 11 năm 2021 19:54:39 GMT
Loại nội dung: văn bản/html; bộ ký tự = UTF-8
Kết nối: giữ nguyên
X-Powered-By: PHP/8.0.12
10.0.19.1 là địa chỉ của máy chủ nginx và 10.0.20.1 là máy chủ Apache mà tôi đang cố gắng ủy quyền. Nếu tôi chạy cùng một lệnh curl như trên, nhưng sử dụng 10.0.20.1 cho URL, nó sẽ hoạt động tốt, vì vậy tôi nghĩ sẽ an toàn khi loại trừ các sự cố kết nối giữa hai máy chủ và bất kỳ sự cố nào với máy chủ Apache. Nhật ký lỗi nginx trống.
nginx -t
Không tìm thấy vấn đề gì với các tệp cấu hình (được sao chép bên dưới). Tôi cũng đặt SELinux thành cho phép ngay bây giờ để loại bỏ nguyên nhân đó.
Tôi đã tạo một cấu hình máy chủ đơn giản (không phải proxy) để kiểm tra và cấu hình đó hoạt động tốt, vì vậy là người mới sử dụng nginx, tôi có cảm giác đây có thể là một sự cố rất nhỏ với tệp proxy.conf của tôi.
nginx.conf:
người dùng nginx;
worker_processes tự động;
error_log /var/log/nginx/error.log cảnh báo;
pid /run/nginx.pid;
bao gồm /usr/share/nginx/modules/*.conf;
sự kiện {
công_nhân kết_nối 1024 ;
}
http {
log_format chính '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log chính;
gửi tệp trên;
bật tcp_nopus;
bật tcp_nodelay;
keepalive_timeout 65;
loại_hash_max_size 4096;
bao gồm /etc/nginx/mime.types;
ứng dụng default_type/octet-stream;
bao gồm /etc/nginx/conf.d/*.conf;
}
conf.d/proxy.conf:
người phục vụ {
nghe 80;
server_name www.example.com;
địa điểm / {
proxy_pass http://10.0.20.1;
}
}