cuốn sách gpt4 ai đã làm

node.js - HTTPS NodeJS và Heroku. Buộc HTTPS?

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-03 13:01:13 hai mươi bốn 4
mua khóa gpt4 Nike

Tôi có máy chủ NodeJS HTTP (không phải S) đang chạy trên Heroku. Tôi đã định cấu hình SSL và nó chấp nhận các yêu cầu qua HTTPS. Lý do tôi sử dụng máy chủ HTTP vanilla là vì những điều sau đây :

Việc chấm dứt SSL xảy ra tại bộ cân bằng tải của Heroku; chúng gửi lưu lượng truy cập đơn giản (không phải SSL) cho ứng dụng của bạn, vì vậy ứng dụng của bạn sẽ tạo một máy chủ không phải HTTPS." 

Thật không may, ứng dụng của tôi vẫn đáp ứng các yêu cầu HTTP cũ. Tôi muốn buộc chuyển hướng hoặc thứ gì đó từ HTTP sang HTTPS. Tôi có thể làm điều này với một số phần mềm trung gian:

/* Ở trên cùng, với các phương thức chuyển hướng khác trước các tuyến đường khác */
app.get('*',function(req,res,next){
if(req.headers['x-forwarded-proto']!='https')
res.redirect('https://mypreferreddomain.com'+req.url)
khác
next() /* Tiếp tục đến các tuyến đường khác nếu chúng tôi không chuyển hướng */
})

Nhưng đây có phải là một giải pháp tốt? Yêu cầu POST hoạt động như thế nào? Nếu tôi đăng lên HTTP, liệu nó có được phép không?

Một cách tiếp cận cuối cùng khác mà tôi nghĩ đến là sử dụng Nginx và thêm chuyển hướng từ HTTP sang HTTPS trong đó. Thật không may, Heroku không cho phép cấu hình Nginx.

câu trả lời hay nhất

Tốt nhất nên sử dụng app.use(function(req, res, next{/* ... */}); để nắm bắt các phương thức HTTP khác.

Giới thiệu về node.js - HTTPS NodeJS và Heroku. Buộc HTTPS? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/24643286/

hai mươi bốn 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress