nginx如何快乐的在windows下部署
nginx在windows下部署
nginx大家应该不陌生,一般我们首先会想到反向代理、控制反转、web缓存等等,其实呢,他除了干这些事,好像就是做这些事的,小巧灵活作为部署web的服务器最适合不过了。不过大多数java爱好者们习惯用Linux系统部署,所以很多人都用Linux系统来安装使用nginx,我是一个.net程序员,虽然也用java,但是习惯性的不喜欢用Linux系统。所以每次遇到跨平台的项目或者前后端分离的项目部署的时候,我还是会选择windows的系统,就连服务器我也是用的百度云安装的windows server 版本,今天我和大家看一下windows系统如何安装部署Nginx。
1.下载Nginx
http://nginx.org/en/download.html
设置Nginx为Windows服务
我们可以借助"Windows Service Wrapper"小工具来辅助实现相关功能。
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>C:\nginx\logs</logpath>
<log mode="roll-by-size">
<sizeThreshold>10240</sizeThreshold>
<keepFiles>8</keepFiles>
</log>
<executable>C:\nginx\nginx.exe</executable>
<startarguments>-p C:\nginx</startarguments>
<stopexecutable>C:\nginx\nginx.exe</stopexecutable>
<stoparguments>-p C:\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服务,之后就可以在Windows服务面板中启动服务了
C:\nginx\nginx-service.exe install
配置nginx.conf
下面我们来配置Nginx主要的文件,重点就是配置这个文件,我们才能快乐的玩转Nginx。在nginx文件夹下的conf文件夹中的nginx.conf就是它的配置文件了。打开nginx.conf文件。在 http{} 中。有如下代码。
server {
listen 8080;
server_name localhost;
location / {
proxy_pass http://127.0.0.1:5000;
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
listen 表示ngnix监听的端口号,默认是80;
我是使用的项目flask是运行在本地的5000端口上,域名例如www.baidu.com。配置是
listen 80;
server_name www.baidu.com;
location / {
proxy_pass http://127.0.0.1:5000
root html;
index index.html index.htm;
}
首先将项目运行起来。这时候可以在5000端口看到它。但是访问网址默认是80端口。这里配置之后。访问网址会转到5000端口。
项目部署就完成了,这里只用了nginx最基本的功能反向代理。
总结
今天因为你的点赞,让我元气满满