Nginx实战001:Window中配置使用Nginx入门

Nginx/Web服务器
386
0
0
2022-03-30
标签   Nginx基础

什么是Nginx

Nginx是一款灵活、稳定、高效、低消耗的轻量级Web服务器,支持HTTP和反向代理及电子邮件(IMAP/POP3/SMTP)等服务。它具的高性能、高并发、低内存消耗及开源免费让深受业界追捧和公司青睐,也因此得到很多企业的广泛应用。

Nginx实战001:Window中配置使用Nginx入门

Nginx下载

Nginx官网提供了Mainline version(主线版本)、Stable version(稳定版本)和Legacy versions(旧版本)的绿色版本,这里我们下载稳定版本:nginx-1.18.0.zip,下载后解压到本地的任意路径即可使用(Nginx文件夹路径不含中文)。

Nginx实战001:Window中配置使用Nginx入门

Nginx配置

Nginx的配置文件在conf目录下的nginx.conf文件,在这里可以对Nginx服务进行配置。比如Nginx默认配置的监听端口为80,如果当前端口已经被占用的话就可以在这里进行修改。具体的配置按照自己的项目需求进行修改,一般我们都在server中进行配置(一个server代表一个服务站点,可以配置多个server节点搭建多个站点)。我这里主要修改了监听端口、代理地址和跨域设置,方便进行功能测试。

Nginx实战001:Window中配置使用Nginx入门

Nginx启动

很多人看到nginx.exe就会双击启动,的确这样是可以启动Nginx的(但是一般不推荐)。因为当启动nginx遇到配置错误时程序会闪退不方便查阅异常,如果修改了nginx配置我们则需要杀掉进程重启启动才会生效。这里我们在nginx启动CMD命令窗口通过执行nginx命令来启动服务,启动命令:start nginx.exe、停止命令:nginx.exe -s stop或者nginx.exe -s quit 、重载命令:nginx.exe -s reload。

Nginx实战001:Window中配置使用Nginx入门

检查Nginx是否启动成功

在浏览器地址栏输入网址 http://localhost:8800,出现Nginx相关页面说明启动成功。也可以在CMD命令窗口输入命令: tasklist /fi "imagename eq nginx.exe" 也可以查看nginx是否启动成功,还可以在【任务管理器】中查看是否有nginx进程。

Nginx实战001:Window中配置使用Nginx入门

Nginx日志

Nginx的日志文件在logs目录下,Nginx日志主要分为两种分别是access.log(访问日志)和error.log(错误日志)。访问日志用来记录用户的IP地址、请求的时间、请求的方式、请求的文件及浏览器等信息。错误日志记录了访问异常的时间、异常类型、异常的方法及出错的信息,可以帮助我们快速定位异常的因素。

Nginx实战001:Window中配置使用Nginx入门

Nginx关闭

前面提到关闭nginx可以通过命令 nginx -s stop(快速停止nginx)或者 nginx -s quit(完整有序的停止nginx)来关闭,如果关闭不了nginx那就使用命令:taskkill /f /t /im nginx.exe强制关掉所有nginx进程。当然我们也可以在【任务管理器】手动管理nginx进程,怎么用看自己咯。

Nginx实战001:Window中配置使用Nginx入门

总结:

以上内容是小编给大家分享的【Nginx实战001:Window中配置使用Nginx入门】,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。为了方便学习,下面附上本文用到的源码:

 server {
    listen       8800;          #监听端口
    server_name  localhost;     #访问域名
    charset utf-8;              #编码格式#access_log  logs/host.access.log  main;
    location / {
        root   html; #站点根目录,可以是相对路径,也可以使绝对路径 
        index  index.html index.htm; #默认主页
        proxy_pass http://10.134.112.186:8010;    #转发后端站点地址,用来访问后台接口
        add_header 'Access-Control-Allow-Origin' '*'; #允许跨域请求
        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
        add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
    }
}
// access.log 访问日志
127.0.0.1 - - [19/Sep/2020:15:32:01 +0800] "GET / HTTP/1.1" 200 1082 "-" 
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3947.100 Safari/537.36"
// error.log 错误日志
2020/09/19 15:12:47 [emerg] 128404#2316: 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)