0

I have a jruby rails app that is working fine with Puma without SSL. According to Puma's wiki, I have to provide a certificate file and a key file. I got my cert file from GoDaddy and since I am on osx, I extracted the private key from the cert using the Keychain app. I am starting Puma using the following command:

bundle exec puma -b 'ssl://0.0.0.0:3000?key=file://Users/me/key.p12&cert=file://Users/me/server.x.ca.crt' -t 3:8

After that I get a bunch of warnings about redefined SSL constants like this one

/Users/me/.rvm/gems/jruby-1.7.1/gems/jruby-openssl-0.8.2/lib/shared/jruby-openssl.rb:16 warning: already initialized constant OPENSSL_VERSION_NUMBER

Then this message:

Puma 1.6.3 starting...
* Min threads: 3, max threads: 8
* Environment: development
IOError: sun.net.ftp.FtpProtocolException: Welcome message:
   initialize at org/jruby/RubyFile.java:333
      open at org/jruby/RubyIO.java:1179
      open at org/jruby/RubyKernel.java:333
      read at org/jruby/RubyIO.java:3611
      read at org/jruby/RubyIO.java:3708
      run at /Users/me/.rvm/gems/jruby-1.7.1/gems/puma-1.6.3-java/lib/puma/cli.rb:359
      each at org/jruby/RubyArray.java:1612
      run at /Users/me/.rvm/gems/jruby-1.7.1/gems/puma-1.6.3-java/lib/puma/cli.rb:314
      (root) at /Users/me/.rvm/gems/jruby-1.7.1/gems/puma-1.6.3-java/bin/puma:10
      load at org/jruby/RubyKernel.java:1046
      (root) at /Users/me/.rvm/gems/jruby-1.7.1/bin/puma:1
      eval at org/jruby/RubyKernel.java:1066
      (root) at /Users/me/.rvm/gems/jruby-1.7.1/bin/ruby_noexec_wrapper:14

And Puma exits. The app runs on my dev machine. I am not using any FTP so I am puzzled by this error message. Any help would be greatly appreciated.

1 Answers1

0

It seems that Puma 1.6.x on Jruby do not work with SSL (see the last Evan Phoenix's comment at the bottom of the page). I now use Apache as a reverse proxy to handle SSL in front of Puma.