Добавление ssl к виртуальному хосту apache приводит к тому, что rails authlogic генерирует исключение базы данных - PullRequest
0 голосов
/ 28 февраля 2012

Я работаю над приложением рельсов. Мы используем Ruby 1.9.3p0 и Rails 3.1.3 на сервере Ubuntu с установленными apache и phusion passenger. Наше приложение использует authlogic для аутентификации и базы данных sqlite. Я пытаюсь добавить поддержку ssl.

Я изменил свой файл виртуального хоста apache, чтобы включить ssl. Затем я перешел к приложению через http и https. Они оба работали. Затем я добавил перенаправление на свой виртуальный хост, чтобы весь трафик, передаваемый по http, перенаправлялся на https Теперь, когда я получаю доступ к своему приложению, я получаю следующую ошибку phusion:

Сообщение об ошибке: Вы должны установить соединение с базой данных перед использованием acts_as_authentic

Я не могу понять, что является причиной ошибки. Вот мой файл конфигурации apache с измененными конфиденциальными данными:

<VirtualHost *:443>
    ServerAdmin my.email@example.com
    ServerName my.domain.com

    SSLEngine on
    SSLCertificateFile /path/to/certificatefile
    SSLCertificateKeyFile /path/to/key/file
    SSLProtocol all
    SSLCipherSuite HIGH:MEDIUM

    DocumentRoot /path/to/document/root
    RailsEnv production
    <Directory /path/to/document/root>
            Options Indexes FollowSymLinks MultiViews ExecCGI
            AllowOverride All
            Order allow,deny
            allow from all
            AddHandler cgi-script .cgi
    </Directory>

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/access.log combined
    ErrorLog /var/log/error.log
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin my.email@example.com
    ServerName my.domain.com
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>

Спасибо!

1 Ответ

0 голосов
/ 28 февраля 2012

Я понял это. Ошибка auth_logic - красная сельдь. Проблема возникла, когда я изменил свою переменную среды ruby ​​на производственную. Производственная база данных sqlite не была заполнена, потому что все было сделано в базе данных разработки до этого момента. В любом случае, спасибо.

...