Lời nói đầu
Thứ nhất: Một cổng 80 đơn giản -> Cổng 443 Viết lại S NOT KHÔNG sửa lỗi này. Trong hầu hết mọi câu hỏi trước đây, chủ đề thư, chủ đề diễn đàn, v.v., tôi đã thấy đây là phản hồi không biết gì đầu tiên và đã bị vẹt nhiều lần.
Thứ hai: Có, tôi biết bạn không thể phục vụ lưu lượng HTTP và HTTPS trên cùng một cổng. Đây không phải là điều đó.
Kịch bản:
Máy chủ Apache lưu trữ nhiều trang web thông qua nhân cổng. Cổng 80 phục vụ một trang web công cộng. Cổng 443 phục vụ phiên bản an toàn của trang web đó.
Các cổng 7443, 8443 và 9443 mỗi cổng phục vụ các trang web được bảo mật SSL riêng biệt.
Nếu người dùng nhập sai URL hoặc được cung cấp một liên kết không hợp lệ, hãy nói http: //hostname.tld: 7443 , họ sẽ được cung cấp trang vô lý sau:
Thay vì máy chủ chỉ cần chuyển hướng chúng sang https: //hostname.tld: 7443 .
Câu hỏi của tôi là, làm thế nào mà tên của Zeus có thể sửa đổi hành vi của Apache hoặc thông báo lỗi này để chuyển hướng người dùng một cách tự động?
Apache rõ ràng đang phục vụ một yêu cầu không phải https (để hiển thị thông báo lỗi đó) mặc dù nó được cấu hình cho HTTPS. Tôi dường như rất ngu ngốc khi không chỉ thực hiện chuyển hướng theo mặc định, nhưng tôi có thể hiểu tại sao họ lại đi theo hành vi họ đã làm, ngay cả khi tôi không đồng ý với điều đó. Vì vậy, câu hỏi của tôi là: bạn có thể thay đổi nó? Họ đang xử lý lỗi SOMEWHERE và với Apache là cấu hình dồi dào, đó là lý do có một số chỉ thị ở đâu đó để xử lý hành vi này, nhưng tôi đã không thể tìm thấy nó trong vài giờ để mày mò.
Cập nhật:
Tôi đã thử nhiều thứ bao gồm:
sử dụng các
ErrorDocument 400
chỉ thị để đến CGI và tập lệnh PHP vừa gửiStatus 301
vàLocation
tiêu đề. Điều này dẫn đến một trang trống. Sử dụngErrorDocument 400 https://hostname.tld:7443
chỉ đơn giản là kết quả trong liên kết đó được hiển thị trên trang.Sử dụng hầu hết mọi kết hợp của
mod_rewrite
tôi hoặc Google có thể đưa ra, bao gồm các tuyên bố về chăn chỉ đạo toàn bộ trang web; những cái này không bao giờ làm việc Theo nghĩa đen, họ không làm gì cả. Tôi đoán rằng Apache đang mắc phải lỗi trên trước khi thậm chí cố gắng xử lý các chỉ thị viết lại.
Tôi không thể sử dụng chuyển hướng dựa trên cổng, vì sử dụng cổng tùy chỉnh. Tôi không thể sử dụng các chuyển hướng dựa trên tập lệnh vì chúng không bao giờ được phục vụ do không khớp http / https. Tôi gần như sẵn sàng khắc phục lỗi này hoặc một hành vi ngoài ý muốn, nhưng ai đó đã nghĩ rằng sẽ đưa một thông báo lỗi rất tùy chỉnh vào đó, họ không bận tâm rằng có lẽ bạn chỉ muốn gửi hàng đến URL họ đã cung cấp ?