如何在CentOS 7/6,Fedora 27/26上使用Nginx和Passenger部署Ruby应用程序

首先,我们假设你已经在你的系统上安装了Ruby。 如果您没有安装Ruby,请使用以下URL根据您的应用程序要求进行安装。

第1步 - 安装前提条件

首先,启用epel yum版本库并更新系统上的软件包。

$ sudo yum install -y epel-release yum-utils
$ sudo yum-config-manager --enable epel
$ sudo yum clean all && sudo yum update -y

第2步 - 安装Nginx Passenger模块

现在在您的系统上安装rails和passenger gem。 执行以下命令来安装两个gem命令。

$ sudo yum install -y pygpgme curl

$ sudo curl --fail -sSLo /etc/yum.repos.d/passenger.repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo

现在使用以下命令将passenger安装在您的系统上。 另外,在您的系统上安装或更新Nginx。

$ sudo yum-config-manager --enable cr && sudo yum install -y nginx passenger

第3步 - 启用Nginx Passenger模块

目前,您已经在您的系统上安装了Passenger和Apache服务器。 现在执行下面的命令为Apache安装passenger模块。 该命令将向您显示指导安装,并告诉您安装所有缺少的依赖关系。

$ vim /etc/nginx/conf.d/passenger.conf
passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini;
passenger_ruby /usr/local/rvm/rubies/ruby-2.4.2/bin/ruby;
passenger_instance_registry_dir /var/run/passenger-instreg;

将为/usr/bin/ruby设置默认passenger_ruby。 我使用RVM将二进制路径更改为我们自定义安装的Ruby版本。

第4步 - 配置Nginx 虚拟主机

让我们用Nginx配置文件中的VirtualHost配置域名。 示例虚拟主机配置如下所示。

   server {
        listen       80 default_server;
        server_name  example.com www.example.com;
        root         /var/www/html/public;
        passenger_enabled on;

   }

第5步 - 重新启动Nginx服务

在Apache配置中添加上面的行后,使用以下命令重新启动Apache服务。

$ sudo systemctl restart nginx.service

恭喜! 您已经使用Nginx配置了Ruby on Rails应用程序。

Ruby 的详细介绍请点这里
Ruby 的下载地址请点这里

猜你喜欢

转载自www.linuxidc.com/Linux/2017-12/149218.htm