Nginx的运行(Windows环境)
前言
nginx 作为http 服务的快速部署起到很大的作用,基本上跑项目离不开nginx。查询互联网上很多安装教程,发现参差不齐,故记录自己部署成功的过程
一、nginx下载
nginx下载地址: http://nginx.org/en/download.html
二、nginx配置服务
将nginx配置成windows系统的服务,方便控制nginx开机启动等操作。
网络上大部分教程是利用开源软件:WinSW-x64.exe
配置nginx成系统服务,那么就按照这种方式
2-1 WinSW的下载和配置文件
WinSW-x64.exe(WinSW v3.0.0-alpha.10)的下载地址:https://github.com/winsw/winsw/releases/tag/v3.0.0-alpha.10
❤ 第一步
复制 WinSW-x64.exe 到 nginx.exe 同路径下,并将 WinSW-x64.exe 重命名为 nginx-service.exe
在 nginx.exe 同路径下创建文件夹:nginx-logs
,用来存放nginx服务操作的日志
❤ 第二步
在 nginx.exe 同路径下创建文件:nginx-service.xml
,作为 nginx-service.exe 的配置文件
nginx-service.xml内容:
<!-- nginx-service.xml -->
<service>
<id>nginx</id>
<name>nginx</name>
<description>This service runs Nginx continuous integration system.</description>
<logpath>E:\caojun\05_nginx-1.18.0\nginx-logs</logpath>
<logmode>roll</logmode>
<depend></depend>
<executable>E:\caojun\05_nginx-1.18.0\nginx.exe</executable>
<startarguments>-p E:\caojun\05_nginx-1.18.0</startarguments>
<stopexecutable>E:\caojun\05_nginx-1.18.0\nginx.exe</stopexecutable>
<stoparguments>-p E:\caojun\05_nginx-1.18.0 -s stop</stoparguments>
</service>
注意:nginx-service.xml 中的路径需要根据nginx实际位置做出相应的修改
❤ 第三步
注册Nginx服务:nginx-service.exe install
启动Nginx服务:nginx-service.exe start
三、访问nginx
注意:由于宿主机的端口号 80 被占用,故在nginx.conf配置文档中将默认端口 80 改为 8080
Nginx服务的宿主机访问 nginx,浏览器地址栏输入:localhost:8080
但是有一个问题:本地局域网其他主机无法访问nginx,其原因是nginx.conf的配置文档
仅列出nginx.conf修改部分内容,未修改部分保留不动:
server {
listen 8080;
#server_name localhost;
server_name 10.8.198.55;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
重启nginx后,本地局域网其他主机访问nginx结果:
四、nginx参数
再 cmd.exe
中输入命令: nginx.exe -h
E:\caojun\05_nginx-1.18.0>nginx.exe -h
nginx version: nginx/1.18.0
Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]
Options:
-?,-h : this help
-v : show version and exit
-V : show version and configure options then exit
-t : test configuration and exit
-T : test configuration, dump it and exit
-q : suppress non-error messages during configuration testing
-s signal : send signal to a master process: stop, quit, reopen, reload
-p prefix : set prefix path (default: NONE)
-c filename : set configuration file (default: conf/nginx.conf)
-g directives : set global directives out of configuration file