在阿里云服务器上将写好的RailAPI项目进行部署
我这里选择使用nginx+passenger进行部署。
在网上查找教程后发现,passenger一般会直接将nginx进行捆绑安装,所以就先使用yum remove nginx
将服务器上的nginx卸载,然后输入以下命令:
rvmsudo gem install passenger
安装好passenger
接着安装nginx,直接输入
rvmsudo passenger-install-nginx-module
按照提示进行安装,将nginx安装在/opt/nginx目录下。
第一次按照教程安装结果到最后提示It looks like something went wrong,安装失败。
网上查阅后发现是阿里云服务器上的linux系统没有分配swap分区,于是手动进行swap分区,
之后安装就可以成功。
安装完成后要进行配置,配置文件是/opt/nginx/conf/nginx.conf
主要是修改server中的这些内容
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /home/tcw001/MA/public;
index index.html index.htm;
passenger_enabled on;
autoindex on;
rails_env development;
}
注意root的目录写自己项目下的public,rails_env可以写开发环境或者生产环境,passenger_enbaled一定要写。
成功修改后,启动nginx。并不能使用services nginx start来启动nginx,直接输入nginx -v
,也会提示-bash: nginx: command not found
,暂时不知道需要怎么配置才能让系统识别nginx,但是查阅后发现要直接输入命令/opt/nginx/sbin/nginx
,就可以进行启动。
我操作后提示80端口被占用,于是在配置中将listen改成8088端口,最后成功完成部署。