您好,登錄后才能下訂單哦!
前幾篇文章,我們使用nginx都是在linux環(huán)境下,今天由于工作的需要。需要在windows環(huán)境也使用nginx搭建web服務(wù)器。
下面記錄下有關(guān)nginx下的搭建與配置。
注意本次實(shí)驗(yàn)使用的windows server 2003 64bit,而且還是在虛擬機(jī)中。IP地址為192.168.1.221
首先去官網(wǎng)下載 nginx最新的的Windows版本,如下:
http://nginx.org/en/download.html
下載到軟件包后,解壓 nginx-1.7.6.zip包到你喜歡的根目錄,并將目錄名改為nginx。
然后在命令行下,切換nginx的主目錄執(zhí)行下列操作:
cd nginx
start nginx
這樣,nginx 服務(wù)就啟動(dòng)了。打開任務(wù)管理器,查看 nginx.exe 進(jìn)程,有二個(gè)進(jìn)程會(huì)顯示,占用系統(tǒng)資源,那是相當(dāng)?shù)纳佟H缦聢D:
然后再打開瀏覽器,輸入http://127.0.0.1,就可以看到nginx的歡迎頁面了。如下:
其實(shí)我們也可以在命令行對(duì)nginx進(jìn)行如下的相關(guān)操作:
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;
}
}
現(xiàn)在來查看下,我配置后的nginx啟動(dòng)情況。如下:
通過上圖,我們可以很明顯的看到配置后nginx照樣可以正常啟動(dòng)。我這個(gè)配置是把nginx作為http文件服務(wù)器來是有的。
按理說以上配置完畢后,我們就可以正常使用了。但是windows下的nginx和linux下的nginx不同,linux下的nginx可以隨系統(tǒng)啟動(dòng)而啟動(dòng),而windows下的卻不同。
但是為了達(dá)到讓nginx隨windows系統(tǒng)啟動(dòng)而啟動(dòng),我們可以通過“Windows Service Wrapper”這個(gè)軟件來實(shí)現(xiàn)。但是在實(shí)現(xiàn)之前,我們還需要做幾件事情:
首先windows系統(tǒng)必須要安裝.NET程序。這個(gè)是為了支持Windows Service Wrapper軟件的。如下:
下面我們開始正式配置Windows Service Wrapper:
1、然后下載最新版的 Windows Service Wrapper 程序,比如我下載的名稱是 "winsw-1.9-bin.exe",然后,把它命名成你想要的名字,比如: "winsw.exe",當(dāng)然你也可以不改名。
2、將重命名后的winsw.exe文件復(fù)制到 nginx 的主目錄,我這里是 "E:\nginx"。
3、然后在nginx主目錄下創(chuàng)建一個(gè)Windows Service Wrapper的XML配置文件,而且該名稱必須與第一步重命名時(shí)winsw.exe使用的名稱一致,比如我這里是 "winsw.xml"。如下:
winsw.xml文件內(nèi)容如下:
<?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、在命令行下執(zhí)行以下命令,以便將nginx安裝成Windows服務(wù)。如下:
winsw.exe install
通過上圖,我們可以很明顯的看到nginx已經(jīng)被成功的安裝到系統(tǒng)的服務(wù)中。
接下來,我們只需要重啟服務(wù)器就可以了。現(xiàn)在測試下:
可以很明顯的看到,這次已經(jīng)完全達(dá)到我們的要求。
補(bǔ)充:
Windows Servcie Wrapper的命令格式如下:
# 安裝服務(wù)
CMD:\> winsw.exe install
# 卸載服務(wù)
CMD:\> winsw.exe uninstall
# 啟動(dòng)服務(wù)
CMD:\> winsw.exe start
# 停止服務(wù)
CMD:\> winsw.exe stop
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。