không thể lấy mod_proxy để chuyển tiếp chính xác các ký tự gạch chéo (/) được mã hóa (% 2f)


11

Tôi có một máy chủ ảo được thiết lập để chuyển hướng ntung-gitblit.localhost-> myserver:1279. Tuy nhiên, nó không hoạt động với dấu gạch chéo được mã hóa ( %2f). URL tôi đang cố truy cập là,

http://ntung-gitblit.localhost/ABC%2fXYZ

Không AllowEncodedSlashes, nó thất bại - apache cố gắng truy cập /error/HTTP_NOT_FOUND.html.vartrên máy chủ. Đặt AllowEncodedSlashesthành Onkết quả trong lần truy cập URL nội bộ sau,

http://myserver:1279/ABC/XYZ

Và thiết lập AllowEncodedSlashesđể NoDecodekết quả trong URL sau bị đánh,

http://myserver:1279/ABC%252fXYZ

Nói cách khác, đó là thoát quá mức hoặc thoát ra ngoài. Câu hỏi : Làm thế nào để tôi làm cho nó nhấn myserver:1279/ABC%2fXYZ?

Câu trả lời:


11

Xin lỗi, chỉ cần có nó (câu trả lời thứ 3 ở đây ), giải pháp là sử dụng nocanontrong ProxyPasschỉ thị,

AllowEncodedSlashes On
ProxyPass / http://myserver:1279/ nocanon

Tôi có thể xóa câu hỏi nếu nó không còn hữu ích.


Cảm ơn vì không phải là DenverCooper9. xkcd.com/979
Portablejim
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.