• 【网络】安装Nginx笔记


    前言

    up安装nginx主要是为了在服务器上做反向代理。有兴趣的同学可以参考下。后面会整理出博客网站搭建的笔记分享出来(其实网上也有很多了)。

    原文:李柱明博客:https://www.cnblogs.com/lizhuming/p/16888637.html

    注意:

    1. 当前笔记基于ubuntu,可直接复制命令。

    安装前先更新下

    sudo apt-get update

    安装依赖库

    #安装openssl库
    sudo apt-get install openssl libssl-dev
    #安装pcre
    sudo apt-get install libpcre3 libpcre3-dev
    #安装zlib
    sudo apt-get install zlib1g-dev
    #安装编译包
    sudo apt-get install build-essential

    下载Nginx

    nginx官网:http://nginx.org/

    今具体版本可以去这里选:http://nginx.org/download

    #在对应目录下载nginx
    wget http://nginx.org/download/nginx-1.23.2.tar.gz
    #解压
    tar -zxvf nginx-1.23.2.tar.gz
    #进入目录
    cd nginx-1.23.2

    ngin文件夹内容如下:

    lzm@VM-12-11-ubuntu:~/work/blog_server/nginx-1.23.2$ ls
    auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  sr

    Nginx编译配置

    在安装配置前,先确认下当前配置:./configure --help

    如果通过修改参数来修改配置:

    如:

    • 安装路径:--prefix=/usr/local/nginx
    • 添加一个模块功能:--with-xxx_mmodule

    我这里就简单添加下http的模块即可:

    sudo ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_gzip_static_module

    配置成功会显示1如下:

    编译&安装&验证nginx

    编译:

    sudo make

    安装:

    sudo make install

    验证:

    # 切换到nginx安装路径
    cd /usr/local/nginx
    #启动nginx
    sudo ./sbin/nginx
    # 查看当前在跑的nginx版本&配置
    sudo ./sbin/nginx -V

    如下表示启动成功:

    在浏览器输入安装了nginx的主机IP,出现如下图即表示nginx正常运行:

    Nginx服务配置

    配置文件再Nginx安装目录下的./conf/nginx.conf,我们修改该文件根据自己的服务进行配置即可。

    配置理解可以参考:菜鸟

    • 全局块 :配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。
    • events块 :配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
    • http块 :可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。
    • server块 :配置虚拟主机的相关参数,一个http中可以有多个server。
    • location块 :配置请求的路由,以及各种页面的处理情况。

    配置SSL

    这个按需选择。

    先拿到证书,如果想公网访问,可去域名处申请免费的SSL证书,如:腾讯云

    申请成功后以nginx下载:

    把证书放到指定目录:主要是两个文件:证书链.pem和私钥.key

    cd /usr/local/nginx
    sudo mkdir ./conf/cert
    # 根据自己证书的位置操作
    cp /home/lzm/cert/xxx.* ./ccert

    修改nginx配置:

    sudo vim 

    开放&配置https代码:

        #HTTPS server
        server {
            listen       443 ssl;
            #监听的地址
            server_name  localhost;
    
            #改为你的证书
            ssl_certificate      ./cert/cert.pem;
            #改为你的私钥
            ssl_certificate_key  ./cert/cert.key;
            # session cache功能
            ssl_session_cache    shared:SSL:1m;
            # 会话重用时限
            ssl_session_timeout  5m;
            # 支持的加密套件
            ssl_ciphers  HIGH:!aNULL:!MD5;
            # 是否由服务器指定加密套件
            ssl_prefer_server_ciphers  off;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
        }
    

    重启nginx:

    cd /usr/local/nginx/sbin/
    sudo ./nginx -s reload

    使用https访问:

    参考


    __EOF__

  • 本文作者: 李柱明
  • 本文链接: https://www.cnblogs.com/lizhuming/p/16888637.html
  • 关于博主: 嵌入式从业者。RTOS、Linux lwip mbedtls...
  • 版权声明: 版权归博主所有
  • 声援博主: 学习笔记分享
  • 相关阅读:
    联邦学习中的推理攻击
    数据结构:ArrayList类和顺序表
    InfluxDB API -- InfluxDB笔记四
    VLOOKUP函数的使用方法
    rstudio server 服务器卡死了怎么办
    周总结
    PCL - 3D点云配准(registration)介绍
    电力电子转战数字IC20220824day68——uvm实战3
    如何在Spring Boot中配置双数据源?
    python入门II--类型检查--类型转换--运算符
  • 原文地址:https://www.cnblogs.com/lizhuming/p/16888637.html