Back

入门知识: 把代码部署到服务器, SSH

发布时间: 2015-07-28 08:28:00

如何登陆远程服务器呢?

$ 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

Back