15

Excuse me if my question may seem inappropriate but i was unable to find any information regarding my question.

I am currently choosing a production web server for my rails app, Passenger seems to fit my needs perfectly, although there is a small question that popped in my head.

It seems that Passenger is already based on Nginx core, but I see there is also a version passenger-nginx. What's the difference between them if they are both based on Nginx?

Thank you in advance.

Freedom_Ben
  • 11,247
  • 10
  • 69
  • 89
Vitali
  • 690
  • 9
  • 29

2 Answers2

12

Passenger standalone is good enough to run in production, it may be easier to use the OS packages instead

  • Installation is usually as simple as yum install or apt-get install
  • Usually includes all the appropriate startup scripts like /etc/init.d/nginx
  • You don't have to write scripts to make sure it starts up after rebooting. Ubuntu will automatically set that up, and on CentOS/RedHat, it's just a one-time call to chkconfig
  • Opening ports 80 and 443 usually requires root, but your app should execute as your regular unprivileged user. The OS packages handle this automatically.
  • Running a shared copy of nginx means you can run multiple sites/apps from the same server, by different users, if needed.

It seems that Passenger is already based on Nginx core but i see there are also a version passenger-nginx. What's the difference between them if they are both based on Nginx?

There is almost no difference. Passenger standalone just automates setting up nginx (if you don't already have it) and passenger-nginx. Passenger standalone typically starts as your regular unprivileged user on port 3000 or another a high port number, and nginx typically starts as root using ports 80 and 443.

John Douthat
  • 40,711
  • 10
  • 69
  • 66
  • how to use passenger without nginx? i don't see logs of wsgi... it's hard to understand what's going with glued processes. – holms May 05 '17 at 14:10
3

Nginx is a web server on top of that passenger done some binding(In general) so rails application work,prior to that we have to set mogrel cluster or similar to that.

So there are 2 ways you can use nginx+passenger 1) Standalone way 2) In general for all app

Standalone way preferably for dev environment So in general for all app if you have already install passenger You can run passenger-install-nginx-module it will fall into 2 way of installing nginx

If nginx is already present then specify directory if not it will download and install nginx and if you want add another custom library to nginx like for upload module etc you can specify path of library while installing.

I hope this clear out some basic.

Amar
  • 6,874
  • 4
  • 25
  • 23