入门知识: 把代码部署到服务器, SSH
访问量: 3618
如何登陆远程服务器呢?
$ ssh [email protected] -p 3344
表示, 远程服务器( your.server.com ) 的端口: 3344, 用户名: root. 就可以登陆了。
如果需要密码的话,按照提示输入进去就可以了。
之后就可以操作了。
nginx 一般都用于前端服务器。(处理纯html 内容)
thin/passenger/unicorn... 一般都用于做后端服务器( 处理ruby语言这样的动态内容)
那么我们部署的时候,就需要做两件事:
1. nginx 要配置好
2. thin 要配置好。
nginx的配置:
在 ubuntu 下面,都是在 /etc/nginx/ 目录下。
nginx.conf 是主要配置文件
如果它里面没有包含站点信息, 那么就看是否使用了: include /etc/nginx/sites-enabled/*;
总之,一个站点信息,看起来是这样:
1 server { 2 listen 80; # 监听80端口 3 server_name www.yue.house yue.house; # 客户端发过来的请求,必须是请求 yue.house 的域名 4 charset utf-8; 5 root /opt/www_yue_house; # 本地的文件目录 6 }
配置rails 服务器
1。 把代码检出来。 例如: 放到 /opt/app/cms
2. 按照rails 的方式来运行它。即可。
对于青云服务器, 外部IP 有限,所以我们需要 做负载均衡:
对于这样的请求该如何做呢? 外部请求 -> .88(nginx) -> 101 ( rails)
就需要 在 .88(nginx) 服务器上做配置:
server { listen 80; server_name mall.yue.house; charset utf-8; location / { proxy_pass http://mall_yue_house_servers; proxy_redirect default; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_next_upstream http_502 http_504 error timeout invalid_header; } } upstream mall_yue_house_servers{ server 192.168.66.101:3333; }
这样, 就是让 .88的nginx 做了个负载均衡, 把所有请求转发给 101:3333 。 下面是进行nginx的脚本的测试:
sudo nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
重启: $ nginx -s reload