Back

一步一步的搭建 一个网站

发布时间: 2015-03-11 03:13:00

忘掉 MAC, 虽然  MAC 也能开发 RAILS  ANDROID,  但是, 我们服务器用的环境就是LINUX  

1. ssh server.  setup rails server  (下面步骤,就是建立一个最典型的RAILS引用 )

  1.1 git clone redmine      or  wget redmine.tar.gz

  1.2 $ bundle install

  1.3 $ configure database  ( config/database.yml )

2.  配置ngnix .  让它处理最前端的请求. ( 有些 部分的REQ 只要静态的文件, 不需要经过RAILS处理 .但是知道这个道理就可以,我们今天先把它跑起来. )

$ vim /etc/nginx/nginx.conf

        server {
                listen       3355;
#                server_name  api.happystock.cn www.happystock.cn api.happystock.com.cn www.happysto
                charset utf-8;
                location / { 
                    proxy_pass          http://redmine_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 redmine_servers{
               server localhost:8877;
#               server localhost:3334;
        }

3. 检查 nginx.  

$ nginx -t       ,  $nginx -s stop   , $nginx 

4. 配置 thin 集群

config/thin.yml

---
chdir: /opt/app/redmine-3.0.0
environment: development
address: 0.0.0.0
port: 8800
timeout: 30
max_conns: 1024
max_persistent_conns: 100
require: []
wait: 30
servers: 2
daemonize: true

运行: $ thin start -C config/thin.yml

可以看到 redmine以及成功跑起来了. 

Redmine Running

5. 修改域名 

现在跑在 :  http://happystock.cn:8877上.  我们希望他跑在:  bug.happysoft.cc

发现   happysoft.cc 以及 www.happysoft.cc 都跑在 当前服务器上.  所以直接为nginx增加针对这个  bug 子域名的处理. 

        server {
                # 下面两行是关键 
                listen       80;  
                server_name  bug.happysoft.cc;
                charset utf-8;
                location / {
                    proxy_pass          http://redmine_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;
                }
        }

Back