本文由秀依林枫提供友情赞助,首发于烂泥行天下

前几篇文章,我们使用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

烂泥:Windows下安装与配置Nginx web服务器的更多相关文章

  1. windows下安装和配置nginx

    下载nginx 到官网下载window版的nginx http://nginx.org/ 配置环境变量 解压到本地的某个路径下, 打开cmd窗口,cd到nginx的目录下 这里要注意cd的时候要加/d ...

  2. *windows下安装以及配置nginx

    1.从nginx官网下载相应的安装包. http://nginx.org/

  3. PHP学习之-Mongodb在Windows下安装及配置

    Mongodb在Windows下安装及配置 1.下载 下载地址:http://www.mongodb.org/ 建议下载zip版本. 2.安装 下载windows版本安装就和普通的软件一样,直接下一步 ...

  4. Linux下安装与配置Nginx

    一.准备 Nginx版本:nginx-1.7.7.tar.gz   请自行到官网下载对应的版本. 二.步骤 ♦在Linux新建一个queenLove用户 [root@localhost /]# use ...

  5. windows下安装和配置redis

    1.windows下安装和配置redis 1.1 下载: 官网(linux下载地址):https://redis.io/ Windows系统下载地址:https://github.com/MSOpen ...

  6. windows下安装和配置多个版本的JDK

    https://jingyan.baidu.com/article/47a29f2474ba55c015239957.html 如何在windows下安装和配置多个版本的jdk,本文将带你在windo ...

  7. 网络基础 Windows下安装和配置net-snmp 代理

    Windows 下安装和配置net-snmp 代理[摘录] by:授客 QQ:1033553122   A.   安装  1.   安装前准备 ActivePerl-5.10.0.1004-MSWin ...

  8. 基于svnserve的SVN服务器(windows下安装与配置)

    基于svnserve的SVN服务器(windows下安装与配置) 基于svnserve的SVN服务器(windows下安装与配置)关键字: svn 安装SVNserve 从http://subvers ...

  9. windows下安装和配置mongoDB

    上次在mac下安装和配置了mongodb,这次在windows下也尝试安装和配置mongodb. 1.首先下载mongodb压缩包,下载后解压到D盘或E盘.如下: 2.配置环境变量:桌面—计算机右键— ...

随机推荐

  1. php函数的传值如果需要引用传递注意的细节

    Strict standards: Only variables should be passed by reference 网上查到资料有这么一句话: 在php5.3以上版本会出这个问题,应该也和p ...

  2. c# 学习心得(函数方法类)

    函数或者说方法都是写在类下的,我们可以通过函数名来调用它们.首先,我们要弄清楚为什么会有函数或者说方法这种东西?这里,我们使用了与前一篇同样的思维方式,先从它的目的或者实用价值出发.当我们在编写程序的 ...

  3. 03Mybatis_mybatis框架原理——执行流程

    mybatis的框架的原理(执行流程).

  4. Python multi-thread 多线程 print 如何避免print的结果混乱

    multithread如何写 这是我第一次写multithread,所以就是照着例子学,下面是我用来学的例子 来自于”Automate the boring stuff with Python”的15 ...

  5. Hashslider – 带有 Hash 标签功能的 jQuery 内容滑块

    Hashslider 实现了常见的 jQuery 滑块的功能,特别之处在于给 URL 加上了标签,因此你能够连接到滑块的某块内容.滑块的内容也可以从外部的 HTML 文件获取. 您可能感兴趣的相关文章 ...

  6. 前端优秀作品展示,JavaScript 版水果忍者

    <水果忍者>是一款非常受喜欢的手机游戏,刚看到新闻说<水果忍者>四周年新版要上线了.网页版的切水果游戏由百度 JS 小组开发,采用 vml + svg 绘图,使用了 Rapha ...

  7. Apache 配置屏蔽某些请求头

    Apache配置文件代码.xwamp:Windows下搭建Apache + PHP + MySQL环境 <Location /> SetEnvIfNoCase User-Agent &qu ...

  8. MySQL索引类型 btree索引和hash索引的区别

    来源一 Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 ...

  9. Window对象

    Window对象:         Window 对象表示浏览器中打开的窗口,如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框 ...

  10. ArcCatalog中连接SDE数据库

    描述 在ArcCatalog采用直接的方式连接SDE数据库时,无论怎样填写连接参数,都连接不上(数据库管理工具和代码都可以连).主要报两类错误: Error:ORA-12154:TNS:无法解析指定的 ...