超实用 Nginx 极简教程,覆盖了常用场景

本文是一篇关于Nginx的极简教程,涵盖了Nginx的安装、使用以及多种配置实战,包括http反向代理、负载均衡、多webapp配置、https反向代理、静态站点、文件服务器搭建和跨域解决方案,适合初学者和开发者快速掌握Nginx的实用技巧。
摘要由CSDN通过智能技术生成

概述

什么是 Nginx?

Nginx (engine x) 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。

 

什么是反向代理?

反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

 

安装与使用

安装

详细安装方法请参考:Nginx服务介绍与安装

使用

nginx 的使用比较简单,就是几条命令。

常用到的命令如下:

 
nginx -s stop        #快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。 nginx -s quit        #平稳关闭Nginx,保存相关信息,有安排的结束web服务。 nginx -s reload      #因改变了Nginx相关配置,需要重新加载配置而重载。 nginx -s reopen      #重新打开日志文件。 nginx -c filename    #为 Nginx 指定一个配置文件,来代替缺省的。 nginx -t             #不运行,而仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。 nginx -v             #显示 nginx 的版本。 nginx -V             #显示 nginx 的版本,编译器版本和配置参数。

如果不想每次都敲命令,可以在 nginx 安装目录下新添一个启动批处理文件startup.bat,双击即可运行。内容如下:

 
@echo off rem 如果启动前已经启动nginx并记录下pid文件,会kill指定进程 nginx.exe -s stop  rem 测试配置文件语法正确性 nginx.exe -t -c conf/nginx.conf  rem 显示版本信息 nginx.exe -v  rem 按照指定配置去启动 ginxnginx.exe -c conf/nginx.conf

如果是运行在 Linux 下,写一个 shell 脚本,大同小异。

nginx 配置实战

我始终认为,各种开发工具的配置还是结合实战来讲述,会让人更易理解。

http 反向代理配置

我们先实现一个小目标:不考虑复杂的配置,仅仅是完成一个 http 反向代理。

nginx.conf 配置文件如下: 注:conf / nginx.conf 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件

 
#运行用户 #user somebody; #启动进程,通常设置成和cpu的数量相等 worker_processes  1; #全局错误日志 error_log  D:/Tools/nginx-1.10.1/logs/error.log; error_log  D:/Tools/nginx-1.10.1/logs/notice.log  notice; error_log  D:/Tools/nginx-1.10.1/logs/info.log  info; #PID文件,记录当前启动的nginx的进程IDpid         D:/Tools/nginx-1.10.1/logs/nginx.pid; #工作模式及连接数上限 events {    worker_connections 1024;     #单个后台worker process进程的最大并发链接数 } #设定http服务器,利用它的反向代理功能提供负载均衡支持 http {     #设定mime类型(邮件支持类型),类型由mime.types文件定义     include       D:/Tools/nginx-1.10.1/conf/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    D:/Tools/nginx-1.10.1/l
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值