2012-11-26 42 views
6

Tài liệu không rõ ràng. Làm thế nào để cài đặt chứng chỉ và vv trong localhost?cách sử dụng force-ssl trong meteor.js mà không cần triển khai tới các tên miền phụ meteor.com?

force-ssl 

This package causes Meteor to redirect insecure connections (HTTP) to a secure URL (HTTPS). Use this package to ensure that communication to the server is always encrypted to protect users from active spoofing attacks. 

To simplify development, unencrypted connections from localhost are always accepted over HTTP. 

Application bundles (meteor bundle) do not include an HTTPS server or certificate. A proxy server that terminates SSL in front of a Meteor bundle must set the standard x-forwarded-proto header for the force-ssl package to work. 

Applications deployed to meteor.com subdomains with meteor deploy are automatically served via HTTPS using Meteor's certificate. 

Trả lời

2

Bạn không cần cài đặt chứng chỉ trên máy chủ cục bộ. Như nó nói "Để đơn giản hóa sự phát triển, các kết nối không mã hóa từ localhost luôn được chấp nhận qua HTTP.", Có nghĩa là bạn có thể phát triển và thử nghiệm ứng dụng mà không cần sử dụng SSL và không cài đặt chứng chỉ. Chỉ cần chạy ứng dụng của bạn và truy cập nó với http://localhost:3000 như bình thường.

Nếu bạn đang nói về việc cài đặt chứng chỉ cho ứng dụng phải đối mặt công khai, tốt nhất bạn nên sử dụng máy chủ proxy ngược như nginx và cài đặt chứng chỉ cho máy chủ đó. http://wiki.nginx.org/HttpProxyModule

+8

gì nếu tôi tương tác với một API như sọc và cần SSL tại địa phương? –

4

Tôi đã slogged thông qua thiết lập một proxy ngược Apache chấm dứt SSL ở phía trước của Meteor, và muốn tài liệu đó ở đây là tốt.

tôi đã thêm dòng sau vào tập tin cấu hình cho máy chủ ảo SSL:

<VirtualHost _default_:443> 
     ServerName server.domain.com 

     ## SSL Engine Switch: 
     # Enable/Disable SSL for this virtual host. 
     SSLEngine on 

     ## Proxy to port 3000 for Meteor apps 
     SSLProxyEngine On 
     ProxyRequests Off # Disable forward proxying 
     ProxyPass/http://localhost:3000 
     ProxyPassReverse/http://localhost:3000 

     ## Your other SSL config directives such as certificates, etc. 

</VirtualHost> 
+0

Câu trả lời hay. Bạn chỉ thiếu một dấu gạch chéo sau: 'ProxyPass/http: // localhost: 3000 /' và 'ProxyPassReverse/http: // localhost: 3000 /' – alste

+0

Tôi nghĩ bạn cũng cần Apache 2.4.6 hoặc mới hơn hỗ trợ reverse proxying Các kết nối WebSocket cũng vậy. –

Các vấn đề liên quan