windows Server2008 下部署nginx
前幾篇文章,我們使用nginx都是在linux環境下,今天由於工作的需要。需要在windows環境也使用nginx搭建web服務器。
下面記錄下有關nginx下的搭建與配置。
註意本次實驗使用的windows server 2003 64bit,而且還是在虛擬機中。IP地址為192.168.1.221
首先去官網下載 nginx最新的的Windows版本,如下:
http://nginx.org/en/download.html
下載到軟件包後,解壓 nginx-1.7.6.zip包到你喜歡的根目錄,並將目錄名改為nginx。
然後在命令行下,切換nginx的主目錄執行下列操作:
cd nginx
start nginx
這樣,nginx 服務就啟動了。打開任務管理器,查看 nginx.exe 進程,有二個進程會顯示,占用系統資源,那是相當的少。如下圖:
然後再打開瀏覽器,輸入http://127.0.0.1,就可以看到nginx的歡迎頁面了。如下:
其實我們也可以在命令行對nginx進行如下的相關操作:
nginx –h //查看nginx的幫助
nginx -s stop // 停止nginx
nginx -s reload // 重新加載配置文件
接下來就是配置nginx的conf文件。Windows下的nginx配置文件和linux配置文件是一樣的。下面是我的配置:
worker_processes 1;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main ‘$remote_addr - $remote_user [$time_local] "$request" ‘‘$status $body_bytes_sent "$http_referer" ‘"$http_user_agent" "$http_x_forwarded_for"‘;
access_log logs/access.log main;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
access_log logs/host.access.log main;
location / {
root E:\MikroTikRouterOS;
autoindex on;
}
}
現在來查看下,我配置後的nginx啟動情況。如下:
通過上圖,我們可以很明顯的看到配置後nginx照樣可以正常啟動。我這個配置是把nginx作為http文件服務器來是有的。
按理說以上配置完畢後,我們就可以正常使用了。但是windows下的nginx和linux下的nginx不同,linux下的nginx可以隨系統啟動而啟動,而windows下的卻不同。
但是為了達到讓nginx隨windows系統啟動而啟動,我們可以通過“Windows Service Wrapper”這個軟件來實現。但是在實現之前,我們還需要做幾件事情:
首先windows系統必須要安裝.NET程序。這個是為了支持Windows Service Wrapper軟件的。如下:
下面我們開始正式配置Windows Service Wrapper:
1、然後下載最新版的 Windows Service Wrapper 程序,比如我下載的名稱是 "winsw-1.9-bin.exe",然後,把它命名成你想要的名字,比如: "winsw.exe",當然你也可以不改名。
2、將重命名後的winsw.exe文件復制到 nginx 的主目錄,我這裏是 "E:\nginx"。
3、然後在nginx主目錄下創建一個Windows Service Wrapper的XML配置文件,而且該名稱必須與第一步重命名時winsw.exe使用的名稱一致,比如我這裏是 "winsw.xml"。如下:
winsw.xml文件內容如下:
<?xml version="1.0" encoding="UTF-8" ?>
<service>
<id>nginx</id>
<name>nginx</name>
<description>nginx</description>
<executable>E:\nginx\nginx.exe</executable>
<logpath>E:\nginx\</logpath>
<logmode>roll</logmode>
<depend></depend>
<startargument>-p E:\nginx\</startargument>
<stopargument>-p E:\nginx\ -s stop</stopargument>
</service>
4、在命令行下執行以下命令,以便將nginx安裝成Windows服務。如下:
winsw.exe install
通過上圖,我們可以很明顯的看到nginx已經被成功的安裝到系統的服務中。
接下來,我們只需要重啟服務器就可以了。現在測試下:
可以很明顯的看到,這次已經完全達到我們的要求。
補充:
Windows Servcie Wrapper的命令格式如下:
# 安裝服務
CMD:\> winsw.exe install
# 卸載服務
CMD:\> winsw.exe uninstall
# 啟動服務
CMD:\> winsw.exe start
# 停止服務
CMD:\> winsw.exe stop
本文出自 “11028104” 博客,請務必保留此出處http://11038104.blog.51cto.com/11028104/1931544
windows Server2008 下部署nginx