Ngnix 简单使用

一、 Docker 安装 Nginx

        1.1 启动 Nginx 实例

sudo docker run -p 80:80 --name nginx -d nginx:1.20

        1.2 将 Nginx 实例的配置文件拷贝出来

sudo docker container cp nginx:/etc/nginx .
# nginx:/etc/nginx 表示名字为 nginx 容器中 /etc/nginx 路径
# . 表示系统当前所在路径 ( 可以用 pwd 查看当前路径 比如当前路径为 /home/appuser/nginx/conf )

        1.3 停用当前的名为 nginx 容器,并移除该容器

sudo docker stop nginx
sudo docker rm nginx

        1.4 按需求修改拷贝出来的配置文件

        略

        1.5 重新创建 nginx 容器,并挂载上拷贝出来的配置文件

sudo docker run -p 80:80 --name nginx       \
-v /home/appuser/nginx/conf:/etc/nginx      \        # 挂载配置文件
-v /home/appuser/logs:/var/log/nginx        \        # 挂载日志
-v /home/appuser/html:/usr/share/nginx/html \        # 挂载页面文件
-d nginx:1.20

二、 Nginx 配置文件

        配置文件结构

全局块: 配置影响 nginx 全局的指令。如:用户组,nginx 进程 pid 存放路径,日志存放路径,配置文件引入,允许生成 worker process 数量等

event 块:配置影响 nginx 服务器或与用户的网络连接。

HTTP块: 可以嵌套多个 server,配置代理、缓存、日志定义等绝大多数功能和第三方模块的配置。

        http 全局块:如 upstream,错误页面,连接超时等

        server 块:一个 http 中可以有多个 server,每个 server 块相当于一个虚拟主机,而每个 server 块也分为 全局 server 块 和 多个 location 块

                全局 server 块: 配置本虚拟机主机的监听配置和本虚拟主机的名字和 IP 配置

                location 块 :配置请求的路由,以及各种页面的处理情况

# 全局块
user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


# events 块
events {
    worker_connections  1024;
}


# http 块
http {

    # http 全局块
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;


    # upstream 反向代理的上游服务器 
    upstream  lmall{
	  # 反向代理的上游服务器 ip 地址为 192.168.23.1:88
      server 192.168.23.1:88;
    }
	
	# server 块
	server {
		# 监听端口
		listen       80;
		listen  [::]:80;
		
		# http 请求中的 host name 域名
		server_name  lmall.com *.lmall.com;
		
		# 将 host 路径中的 /static 做静态代理,
		# 比如 nginx 收到请求为 http://lmall.com:80/static/124.img 
		# 则会直接件本机 /usr/share/nginx/html/124.img 文件代理出去
		location /static/ {
		  root /usr/share/nginx/html;
		}

		location / {
		  proxy_set_header Host $host;  # 方向代理默认会丢弃请求中的 host 
		  proxy_pass http://lmall;  	# 这里的 lmall 指的是上面的 upstream 反向代理上游服务器
		}
	}

    # 引入配置文件 多个 server 块
    include /etc/nginx/conf.d/*.conf; 
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值