Tôi cũng gặp phải vấn đề này và tôi đã có thể sửa nó bằng lệnh proxy_redirect ngay sau lệnh proxy_pass của tôi trong cấu hình nginx của tôi:
proxy_redirect http://example.com:8080/ http://example.com/
Đây là cấu hình nginx đầy đủ của tôi (Trong trường hợp của tôi, Apache nằm trên cổng 81 và lưu trữ hai trang web. Tôi đã thêm hai dòng proxy_redirect dành riêng cho trang web vì tôi không chắc chắn cách thêm một trang chung chung.)
server {
listen 80;
access_log /var/log/nginx/apache-proxy.access.log;
location / {
proxy_pass http://localhost:81;
#fix for apache redirects that include the port number
proxy_redirect http://nfriedly.com:81/ http://nfriedly.com/;
proxy_redirect http://misticflame.com:81/ http://misticflame.com/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 6000;
proxy_send_timeout 6000;
proxy_read_timeout 6000;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
send_timeout 6000;
proxy_buffering off;
proxy_next_upstream error;
}
}
Lưu ý: Đây là phiên bản tiền 1.0 của nginx 5+ năm trước. Đây là tài liệu cho proxy_redirect cho phiên bản hiện tại: http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_redirect