windows 安装Nginx并创建为Windows服务

复制:https://blog.csdn.net/qq_36949713/article/details/83108149

 

安装Nginx

下载windows版nginx (http://nginx.org/download/nginx-1.10.0.zip),之后解压到需要放置的位置(D:\xampp\nginx)

将Nginx设置为Windows服务

需要借助"Windows Service Wrapper"小工具,项目地址: https://github.com/kohsuke/winsw

下载地址: http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/1.18/winsw-1.18-bin.exe

下载该工具后,将其放在 Nginx安装目录下,并重命名为nginx-service.exe,创建配置文件nginx-service.xml(名字要和工具名一样),

创建nginx-service.exe.config(为支持NET 4.0 runtime,默认只支持NET 2.0 runtime)

文件结构如下:

nginx-service.xml 内容如下:

 

<service>
  <id>nginx</id>
  <name>Nginx Service</name>
  <description>High Performance Nginx Service</description>
  <logpath>D:\xampp\nginx\logs</logpath>
  <log mode="roll-by-size">
    <sizeThreshold>10240</sizeThreshold>
    <keepFiles>8</keepFiles>
  </log>
  <executable>D:\xampp\nginx\nginx.exe</executable>
  <startarguments>-p D:\xampp\nginx</startarguments>
  <stopexecutable>D:\xampp\nginx\nginx.exe</stopexecutable>
  <stoparguments>-p D:\xampp\nginx -s stop</stoparguments>
</service>

 

nginx-service.exe.config 内容如下:

 

<configuration>
  <startup>
    <supportedRuntime version="v2.0.50727" />
    <supportedRuntime version="v4.0" />
  </startup>
  <runtime>
    <generatePublisherEvidence enabled="false"/> 
  </runtime>
</configuration>

 

在cmd中运行如下命令安装windows服务

D:\xampp\nginx\nginx-service.exe install

之后就可以在Windows服务面板中启动服务了

浏览器中就可以正常访问了

 

端口占用则会报错:

nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)

解决方法:

1、修改 nginx.conf 的端口

2、netstat -aon | findstr :80 查到使用此端口进程 并查找  tasklist|findstr "1884"    他的进程名字

修改该程序的端口

 

注意:配置路径不对就会有问题

https://repo.jenkins-ci.org/artifactory/releases/com/sun/winsw/winsw/1.19.1/winsw-1.19.1-bin.exe

http://nginx.org/download/nginx-1.19.1.zip

posted @ 2021-01-12 11:56  三瑞  阅读(592)  评论(0编辑  收藏  举报