How to host Ruby Rails application in https

How to make my ruby on rails application to work on with https
protocol . My application rails version - 2.3.8 . I use phusion
passenger and apache as server . Kindly help me how to make it up .

On Fri, Oct 7, 2011 at 2:04 PM, Sasi [email protected] wrote:

How to make my ruby on rails application to work on with https
protocol . My application rails version - 2.3.8 . I use phusion
passenger and apache as server . Kindly help me how to make it up .
That’s not Rails specific. You need to setup your Apache server to use
SSL.
I’m not an Apache expert, but I think you have to:

  • Enable mod_ssl
  • Setup the port SSL will listen to (The default might be commented on
    your conf file)
  • Define your virtualhost for that port.

If your server already has SSL configured, you only need to define your
vhost.

Hope it helps.


You received this message because you are subscribed to the Google G. “Ruby
on Rails: Talk” group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en.


Leonardo M…
There’s no place like ~

Thanks pal. Using a single apache with multiple virtual host im able
to achieve https and run my run application .

<VirtualHost *:8080>

ServerName somename.com

Options FollowSymLinks
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

<VirtualHost *:443>
RailsEnv development

Options FollowSymLinks
AllowOverride None
Order deny,allow

Deny from none

  Allow from all
ProxyPreserveHost on

Document /home/sasi/SampleApp/public

ServerName somename.com
ErrorLog “/usr/local/apache2/logs/error_log”
TransferLog “/usr/local/apache2/logs/access_log”
SSLEngine on

SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:
+SSLv2:+EXP:+eNULL

SSLCertificateFile “/home/sasi/Demo_ssl_root_certificates/
ssl_demo211.cer”

<FilesMatch “.(cgi|shtml|phtml|php)$”>
SSLOptions +StdEnvVars

<Directory “/usr/local/apache2/cgi-bin”>
SSLOptions +StdEnvVars

BrowserMatch “.MSIE.
nokeepalive ssl-unclean-shutdown
downgrade-1.0 force-response-1.0

CustomLog “/usr/local/apache2/logs/ssl_request_log”
“%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b”

Through single server setup im able to achieve this (placing app and
db in the server ) works fine. Can u suggest me . How can i achieve
this in a three tier architecture . (Web component simple apache , App
server containing passenger module with apache pointing the
application , db server in a seperate machine ) . Between web,db and
app im able to esatblish connection. But with respect to https . When
i call from webserver to app internally the URL shifts back to http
from https so url breaks up in this case. Any ruby plugin / gum which
will support https (SSL) to stay .

Thanks pal … Using multiple virtual hosts in a single apache im to
configure the apache in https make my application to run in https.

<VirtualHost *:8080>

ServerName somename.com

Options FollowSymLinks
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

<VirtualHost *:443>
RailsEnv development

Options FollowSymLinks
AllowOverride None
Order deny,allow

Deny from none

  Allow from all
ProxyPreserveHost on

Document /home/sasi/SampleApp/public

ServerName somename.com
ErrorLog “/usr/local/apache2/logs/error_log”
TransferLog “/usr/local/apache2/logs/access_log”
SSLEngine on

SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:
+SSLv2:+EXP:+eNULL

SSLCertificateFile “/home/sasi/Demo_ssl_root_certificates/
ssl_demo211.cer”

<FilesMatch “.(cgi|shtml|phtml|php)$”>
SSLOptions +StdEnvVars

<Directory “/usr/local/apache2/cgi-bin”>
SSLOptions +StdEnvVars

BrowserMatch “.MSIE.
nokeepalive ssl-unclean-shutdown
downgrade-1.0 force-response-1.0

CustomLog “/usr/local/apache2/logs/ssl_request_log”
“%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b”

Through single server setup im able to achieve this (placing app and
db in the server ) works fine. Can u suggest me . How can i achieve
this in a three tier architecture . (Web component simple apache , App
server containing passenger module with apache pointing the
application , db server in a seperate machine ) . To db and app im
able to esatblish connection. But with respect to https . When i call
from webserver to app internally the URL shifts back to http from
https.