2013-08-01 2 views
3

Сценарий
Я запускаю Phusion Passenger через nginx.
Я настроил nginx для использования SSL и перенаправляет весь HTTP-трафик на HTTPS.
Должен ли я включить параметр force_ssl в моем приложении Rails?
Если да, то почему и в чем преимущества?
Если я не включаю его, какие угрозы безопасности я представляю?Должен ли я включать Rails force_ssl, хотя nginx обрабатывает перенаправления?

Nginx конфигурации:

server { 
    listen    80; 
    server_name   myapp.com 
    rewrite   ^https://$server_name$request_uri? permanent; 
} 

server { 
    listen    443 ssl; 
    server_name   myapp.com; 

    ssl_certificate  /etc/ssl/certs/nginx.pem; 
    ssl_certificate_key /etc/ssl/certs/nginx.key; 

    root /home/user/rails/app/public; 

    passenger_enabled on; 
} 

ответ

1

Опция force_ssl выполняет то же самое, как правило переписывания Nginx, так что вам не нужен вариант force_ssl. force_ssl может дать вам больше детализации, например, упростить запрос SSL в определенных субдоменах или в определенных средах развертывания. Также может быть лучше, если вам удобнее выполнять такую ​​конфигурацию в Rails, а не в nginx. Однако это не даст вам никакой дополнительной безопасности.

Смежные вопросы