我无法设置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交锋。非常感谢您的帮助。
答案 0 :(得分:0)
您需要将apache配置为反向代理。
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/