Приложение Rails 3.1, работающее с SSL - Ошибка индикации имени сервера TLS? - PullRequest
0 голосов
/ 26 августа 2011

У меня есть простое приложение Rails 3.1.rc6, которое я использую, чтобы попытаться протестировать конфигурации SSL на моем тестовом сервере (OS X 10.7 Server).Я использую Phusion Passenger и Apache.

Я могу без проблем запустить приложение, если не использую SSL.Когда я включаю SSL, либо через Apache, либо через config.force_ssl = true в моем файле environments/production.rb, страница загружается без ошибок, но в основном она пуста и это не мой сайт.Похоже, что он пытается обслуживать файлы из пустой директории.

Я проверил документацию Edge Rails для настройки SSL , и в нем упоминается только добавление опции config.force_ssl = true, сказав, чтоавтоматически задействовать промежуточное ПО Rack :: SSL.

Когда я загружаю страницу, я вижу:

Index of /

    Name    Last modified   Size    Description

Apache/2.2.19 (Unix) mod_ssl/2.2.19 OpenSSL/0.9.8r DAV/2 Phusion_Passenger/3.0.8 Server at mysite.mydomain.com Port 443

Точно то же самое происходит, если я удаляю строку конфигурации ssl в направляющихприложение и использовать инструменты сервера, чтобы заставить сайт SSL (выбор самозаверяющего сертификата для тестирования).Что мне нужно изменить, чтобы он служил папке ... myapp/current/public, как это происходит, когда у меня есть config.force_ssl = false?

Редактировать: Немного больше информации.Я вижу следующее в /var/log/apache2/error_log:

[Fri Aug 26 10:57:49 2011] [notice] caught SIGTERM, shutting down
[Fri Aug 26 10:57:50 2011] [warn] RSA server certificate CommonName (CN) `My-Mac-mini.local' does NOT match server name!?
...
[Fri Aug 26 10:57:50 2011] [warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
httpd: Could not reliably determine the server's fully qualified domain name, using myserver.local for ServerName
[Fri Aug 26 10:57:50 2011] [warn] _default_ VirtualHost overlap on port 443, the first has precedence
[Fri Aug 26 10:57:50 2011] [warn] _default_ VirtualHost overlap on port 443, the first has precedence
[Fri Aug 26 10:57:50 2011] [warn] RSA server certificate CommonName (CN) `My-Mac-mini.local' does NOT match server name!?
...
[Fri Aug 26 10:57:50 2011] [warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Fri Aug 26 10:57:50 2011] [notice] Apache/2.2.19 (Unix) mod_ssl/2.2.19 OpenSSL/0.9.8r DAV/2 Phusion_Passenger/3.0.8 configured -- resuming normal operations
cache: [GET /] miss

1 Ответ

0 голосов
/ 29 августа 2011

Это похоже на ошибку конфигурации сервера Lion. Наконец исправили это в файле /etc/apache2/extra/httpd-vhosts.conf, добавив строку NameVirtualHost *:443 после строки NameVirtualHost *:80. Я предполагал, что сервер сделал бы это сам по себе, если бы он размещал несколько сайтов SSL, но оказалось, что это не так.

...