Windows下网站发布记录【apache+thin+sql2008】

越是不想在windows下发布网站,客户越是要求在windows下发布网站。。。。所以只能一再逆流而行,探索在windows下rails的部署了。。。

 

大概的环境介绍一下:

开发环境:ubuntu 12.0 + rails 3.2.2 + sqlserver 2008 r2

sql数据连接: tiny_tds, windos下和linux下都能用, 非常方便,不过只是sql 2005以及以上版本, 不支持sql 2000.

发布环境: windows 2008 server R2 + sqlserver 2008 r2 + thin + apache

1. thin 注册服务, 用的是windows下的服务器注册技术

    详情参考:http://www.cnblogs.com/lwm-1988/archive/2012/04/27/2473276.html

   thin的详细帮助文档可以执行 thin –-help 查看

   1.1 注意点:windows 注册表内容

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThinServer\Parameters]  

"Application"="D:\\WEB_APP\\Thin_Service\\rails_card_ap.bat"

"AppParameters"=""

"AppDirectory"="D:\\WEB_APP\\Card_AP"

 

1.2 bat文件内容

thin start -p 8364 -e production -a 127.0.0.1 -c D:\WEB_APP\MyAPP

 

都配置好了,启动ThinServer服务就可以了, 可以看到8364端口开始监听了。

image

 

2. apache负载均衡配置

1. 安装apache, 可以去官方网站下载最新的版本, http://apache.org

2. 打开配置文件的mod

 1).所有的proxy_module

2).  rewrite_module 

3). status_module 监控负载均衡状态



3. 配置文件内容

 

<VirtualHost *:80>

  #监听域名

  ServerName lock.glodon.com 



  #网站静态文件目录

  DocumentRoot D:/WEB_APP/Card_AP/public 



  ProxyRequests Off

  <Proxy balancer://thin_rails>

    BalancerMember http://127.0.0.1:8364

  </Proxy>

  ProxyPass /assets/ ! #静态图片不代理



  ProxyPass / balancer://thin_rails/

  ProxyPassReverse / balancer://thin_rails/

  ProxyPreserveHost on

  #Custom log file locations

  ErrorLog  "logs/error.80.log"

  CustomLog "logs/access.80.log" combined   



   #查看负载均衡情况,生成环境下请去掉该部分,可以直接访问 /balancer-manager查看

   <Location /balancer-manager>

      SetHandler balancer-manager

      order Deny,Allow

      Allow from all

   </Location>



   #设置静态文件的读取权限,否则会出现403 forbidden

   <Directory "D:/WEB_APP/Card_AP/public">

     Options Indexes FollowSymLinks

     AllowOverride None

     Order allow,deny

     Allow from all

   </Directory>

</VirtualHost>



4. 负载均衡效果图

 

image

 

参考:http://koda.iteye.com/blog/465061

你可能感兴趣的:(windows)