Các Chỉ thị Proxypass có cần Chỉ thị ProxyPassReverse không?


20

Có phải tất cả các Chỉ thị ProxyPass đều cần Chỉ thị ProxyPassReverse không?

ProxyPass / http://foo.example.com:8080/  
ProxyPassReverse / http://www.example.com/

Tôi đã xem đoạn trích này và hiểu rằng tất cả lưu lượng truy cập đến foo.example.comđều được ủy quyền cho foo.example.com:8080. Dòng thứ hai làm gì?

Câu trả lời:


15

Lệnh này cho phép Apache điều chỉnh URL trong các tiêu đề Vị trí, Nội dung-Vị trí và URI trên các phản hồi chuyển hướng HTTP .

Ví dụ: giả sử máy chủ cục bộ có địa chỉ http://example.com/ ; sau đó

ProxyPass /mirror/foo/ http://backend.example.com/
ProxyPassReverse /mirror/foo/ http://backend.example.com/
ProxyPassReverseCookieDomain backend.example.com public.example.com
ProxyPassReverseCookiePath / /mirror/foo/

sẽ không chỉ khiến một yêu cầu cục bộ cho http://example.com/mirror/foo/bar được chuyển đổi nội bộ thành một yêu cầu proxy thành http://backend.example.com/bar (chức năng ProxyPass cung cấp tại đây). Nó cũng đảm nhiệm việc chuyển hướng mà máy chủ backend.example.com gửi: khi http://backend.example.com/bar được anh ấy chuyển hướng đến http://backend.example.com/quux Apache điều chỉnh điều này thành http: / /example.com/mirror/foo/quux trước khi chuyển tiếp phản hồi chuyển hướng HTTP đến máy khách. Lưu ý rằng tên máy chủ được sử dụng để xây dựng URL được chọn liên quan đến cài đặt của lệnh UseCanonicalName.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.