【问题标题】:Rails SSL setup with Apache, Puma, Ubuntu使用 Apache、Puma、Ubuntu 设置 Rails SSL
【发布时间】:2019-07-11 09:13:44
【问题描述】:

我在设置 Rails 应用程序以成功使用 SSL 时遇到问题。堆栈使用 apache、puma 和 ubuntu。我的应用在 3000 端口上运行。

没有 SSL,我的应用程序运行良好。现在,在我的 URL 中显示的唯一内容是 /var/www/myapp/public 目录列表。我只是无法显示我的 Rails 应用程序。

该应用已成功将所有http 流量重定向到https

任何成功设置的人都可以分享他们的sites-available 配置文件,或者在下面建议对我的更改吗?我有一种感觉,我缺少的地方有一条线。这是我第一次尝试启动并运行 SSL cert rails 应用服务器。

我不明白在端口 443 上通过 SSL 查看网站时,我在端口 3000 上运行的应用程序应该如何显示。

这是我的sites-available 设置:

<IfModule mod_ssl.c>
        <VirtualHost _default_:443>
                ServerAdmin admin@<MYAPP.COM>
                ServerName <MYAPP.COM>

                DocumentRoot /var/www/<MYAPP>/public

                ErrorLog ${APACHE_LOG_DIR}/error.log
                CustomLog ${APACHE_LOG_DIR}/access.log combined

                SSLCertificateFile      /etc/ssl/certs/<MYAPP.crt>
                SSLCertificateKeyFile   /etc/ssl/private/<MYAPP.key>

                <FilesMatch "\.(cgi|shtml|phtml|php)$">
                                SSLOptions +StdEnvVars
                </FilesMatch>
                <Directory /usr/lib/cgi-bin>
                                SSLOptions +StdEnvVars
                </Directory>
        </VirtualHost>
</IfModule>

在过去的 5 个小时里,我一直在与 Google 发生冲突。非常感谢任何帮助。

【问题讨论】:

  • 我不确定您是如何托管的,但过去,我的团队使用 AWS,我们将证书放在 ELB 上。这使得客户端和我们的 ELB 之间的流量加密,然后内部的所有内容都使用 HTTP,这样我们就不必在大量服务器上安装证书(我们有冗余),也不必担心制作 Rails(或 Apache)处理证书。

标签: ruby-on-rails apache ubuntu ssl puma


【解决方案1】:

您需要将 apache 配置为反向代理。

ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/

【讨论】:

    猜你喜欢
    • 2017-06-08
    • 2019-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-10
    • 2013-09-02
    • 1970-01-01
    • 2018-03-06
    相关资源
    最近更新 更多