nginx部署

Posted yefan0323

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx部署相关的知识,希望对你有一定的参考价值。

一.nginx介紹與安裝

 1.Nginx是一款基於異步框架的輕量級/高性能的web服務器/反向代理服務器/緩存服務器/電子郵件代理服務器

  優點:

    高并發量

    簡單穩定

    低成本

 2.nginx應用場景

  

 

 

 3.apt-get安裝:apt-get install nginx -y

  服務狀態:systemctl status nginx/service nginx status

  檢查配置文件 nginx -t

  重新加載配置文件 nginx -s reload

4.nginx目錄介紹

  配置目錄:/etc/nginx

  執行文件:/usr/sbin/nginx

  目錄文件:/var/log/nginx

  啟動文件:/etc/init.d/nginx

 

 5.nginx配置文件:/etc/nginx/nginx.con 

1,全局段:配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,允许生成worker process数等

2,events段。配置影响nginx服务器与用户的网络连接,有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网络连接,开启多个网络连接序列化等。

3,http段: 可以嵌套多个server,配置代理,缓存,日之定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。

4,server段:配置虚拟主机的相关参数,主要有ip地址, 端口号, 域名

5,location段: 配置请求的处理方式。

 

6.nginx常見配置

  

server {
    listen 0.0.0.0:80;  # 监听ip和端口
    server_name www.meiduo.com;  # 监听域名
    root   /var/www/html;    # 指定响应请求的文件所在路径
    location / {      # 匹配规则
        # 返回静态文件
        index index.html;    # 指定响应请求的默认文件名称
        # 反向代理
        proxy_pass    http://xxxx;   # 转发请求
        # 重定向
        rewrite   正则表达式   新uri;
        # 直接返回结果, 
        return 200 \'内容\';
    }
}

7.nginx負載均衡

反向代理:
location / {
  proxy_pass  http://127.0.0.1:8000;  # 发送请求到其他的服务
}


其他配置:
  proxy_set_header Host $host;    # 设置header
  proxy_set_header X-Real-IP $remote_addr;

8.uwsgi配置使用

[uwsgi]
#直接做web服务器使用,Django程序所在服务器地址
http=127.0.0.1:8001
#项目目录
chdir=/home/parallels/Desktop/meiduo_mall
#项目中wsgi.py文件的目录,相对于项目目录
wsgi-file=meiduo_mall/wsgi.py
# 进程数
processes=2
# 线程数
threads=2
# 是否开启master进程
master=True
# 存放进程编号的文件
pidfile=uwsgi.pid
# 日志文件,因为uwsgi可以脱离终端在后台运行,日志看不见。我们以前的runserver是依赖终端的
daemonize=uwsgi.log
# 指定依赖的虚拟环境
virtualenv=/home/parallels/.virtualenv/django_py3

 

以上是关于nginx部署的主要内容,如果未能解决你的问题,请参考以下文章

Nginx——Nginx启动报错Job for nginx.service failed because the control process exited with error code(代码片段

将 nginx rtmp 片段发送到 WebRTC

text 有用的nginx命令和片段

菜鸟nginx源代码剖析 配置与部署篇 手把手实现nginx "I love you"

Django框架代码和nginx的整合部署

Django线上部署代码修改失效问题