Điểm:0

Dịch vụ web HTTPS và Dịch vụ phụ trợ trên cùng một Máy chủ

lá cờ ne

Có cách nào để thiết lập dịch vụ phụ trợ để nghe trên HTTPS trên một Dịch vụ web hiện có đang phục vụ trên HTTPS không?

Ban đầu tôi có cả hai được phục vụ trên HTTP, nhưng gần đây đã thêm CA cho Dịch vụ web. Cả hai đều hoạt động hoàn toàn tốt trên HTTP, nhưng khi cố gắng truy cập vào phần phụ trợ (từ cổng 5000) từ HTTPS, tôi không nhận được phản hồi (ban đầu tôi đang phục vụ phần phụ trợ với PM2). Tôi cần cập nhật lệnh gọi ajax từ giao diện người dùng để gọi phần phụ trợ trên HTTPS thay vì HTTP.

Tôi đã xem xét áp dụng NGINX cho chương trình phụ trợ, nhưng không thể tìm thấy tài nguyên cho tình huống cụ thể của mình và tôi không biết cách định cấu hình NGINX để nghe trên cổng 5000 cho HTTPS (điều này không hợp lý với tôi vì HTTPS là cổng 443).

Michael Hampton avatar
lá cờ cz
Vui lòng đăng đầu ra của `nginx -T`
Gerard H. Pille avatar
lá cờ in
Https không phải là cổng 443, giao thức đó có thể được sử dụng trên bất kỳ cổng nào bởi máy khách và máy chủ.
Điểm:0
lá cờ za

Đó là một yêu cầu Cơ bản, tôi sẽ trả lời chung chung vì Người dùng không cung cấp đủ Thông tin để chính xác hơn. LỜI NHẮC: Vì vậy, điều này sẽ trả lời nó một cách Chung chung.

Thông tin trước

Người dùng nói rằng anh ta muốn lắng nghe hoặc đến cổng 5000 cho https

Chuyển hướng http sang https tiêu chuẩn

người phục vụ {
        server_name *.domain.tld domain.tld;
        #nghe Cổng 80
        nghe 80;
        #chuyển hướng đến https
        trả lại 301 https://$host$request_uri; 
}

Nghe NGINX trên cổng 5000

người phục vụ {
        server_name *.domain.tld domain.tld;
        #nghe Cổng 5000, http
        nghe 5000;
        #thêm nội dung vào đây
}

Chỉ thị máy chủ https tiêu chuẩn, sử dụng Certbot để tạo chứng chỉ

người phục vụ {
        #nghe trên 443 cho SSL (https) với http 1.0/1.1
        #nghe ssl 443;
        
        #Nghe trên 44 cho SSL (https) với http 2
        nghe 443 ssl http2;
        
        #Những gì chúng tôi lắng nghe cho miền      
        server_name *.domain.tld domain.tld;
                địa điểm / {
                gốc /var/www/vhosts/domain.tld;
}
    ssl_certificate /etc/letsencrypt/live/domain.tld/fullchain.pem; # được quản lý bởi Certbot
    ssl_certificate_key /etc/letsencrypt/live/domain.tld/privkey.pem; # được quản lý bởi Certbot
}

Reverse-Proxy cơ bản Nghe trên Cổng 80 http VÀ cổng 443 SSL

người phục vụ {
        #nghe trên 80 cho https với http 1.0/1.1
        nghe 80;
        
        #nghe trên 80 cho https với http 2 (bị tắt, certbot không hiểu nó trên cổng 80)
        #nghe 80 http2;

        #nghe trên 443 cho SSL (https) với http 1.0/1.1
        #nghe ssl 443;
        
        #Nghe trên 44 cho SSL (https) với http 2
        nghe 443 ssl http2;
        
        #Những gì chúng tôi lắng nghe cho miền      
        server_name *.domain.tld domain.tld;
                địa điểm / {
                        proxy_pass http://127.0.0.1:5000;

                        #https thậm chí còn hoạt động
                        #proxy_pass https://127.0.0.1:5000;                            
                        proxy_set_header Máy chủ $http_host;
}
    ssl_certificate /etc/letsencrypt/live/domain.tld/fullchain.pem; # được quản lý bởi 
    Chứng chỉ
    ssl_certificate_key /etc/letsencrypt/live/domain.tld/privkey.pem; # được quản lý bởi 
    Chứng chỉ
}

kết luận

Nếu bạn muốn truy cập Phần cuối của mình trên Cổng 5000, bạn phải sử dụng proxy_pass, nếu bạn muốn NGINX nghe trên cổng 5000, trong trường hợp nó chưa được sử dụng, hãy nghe nghe 5000 ssl;

Và ngoài ra, như những người khác đã nói, SSL là một Giao thức và không bị ràng buộc với một cổng cụ thể, nó thường được sử dụng 443 nhưng nó không được nghe nó, tôi cũng có thể sử dụng 61337 cho nó.

Tôi sẽ cập nhật Câu trả lời trong trường hợp OP sẽ cập nhật câu hỏi

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.