Linux - Nginx安装

本文由于是学习,所以使用tar包安装,Linux版本CentOS7,nginx-1.20.2,本次安装路径为/usr/local/bigData

下载&配置

官方下载地址,本人选择的这个版本是稳定版。
在这里插入图片描述
下载后将文件上传至Linux上面,使用mv命令移动至下面文件里面。
在这里插入图片描述

cd /usr/local/nginx   # 进入安装目录
tar -zxvf nginx-1.20.2.tar.gz   # 解压文件
yum -y install gcc gcc-c++ pcre  pcre-devel openssl openssl-devel zlib  zlib-devel   # 安装依赖库
cd nginx-1.20.2/   # 进入程序目录
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --error-log-path=/usr/local/nginx/log/nginx.log --pid-path=/usr/local/nginx/pid  # 配置一些模块以及路径
make   # 编译
make install   # 安装
cd ..   # 返回上一层
rm -rf nginx-1.20.2.tar.gz   # 删除安装包
./sbin/nginx   # 启动nginx
./sbin/nginx -s stop   # 关闭nginx
./sbin/nginx -s reload   # 重启
ps aux | grep nginx   # 查看是否启动成功,浏览器访问自己的IP有欢迎界面安装成功

在这里插入图片描述

启动优化

vim /usr/lib/systemd/system/nginx.service   # 配置nginx服务
ln -s /usr/lib/systemd/system/nginx.service /etc/systemd/system/nginx.service

里面填写下面的东西,注意路径地址哈,以下参考配置nginx的systemctl命令

[Unit]   # 对服务的说明
Description=nginx-server   # 描述服务
After=network.target remote-fs.target nss-lookup.target   # 描述服务类别

[Service]   # 服务的一些具体运行参数的设置
Type=forking    # 后台运行的形式
PIDFile=/usr/local/nginx/pid   # PID文件的路径
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf   # 启动准备
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf   # 启动命令
ExecReload=/usr/local/nginx/sbin/nginx -s reload   # 重启命令
ExecStop=/usr/local/nginx/sbin/nginx -s stop   # 停止命令
ExecQuit=/usr/local/nginx/sbin/nginx -s quit    # 快速停止
PrivateTmp=true   # 给服务分配临时空间

[Install]
WantedBy=multi-user.target   # 服务用户的模式
systemctl daemon-reload  # 加载一下刚刚的配置文件
systemctl start nginx   # 启动nginx
systemctl status nginx   # 查看nginx状态
systemctl enable nginx   # 设置开机自启

在这里插入图片描述

启动成功

个人喜好配置

参考宝塔
修改 vim /usr/local/nginx/conf/nginx.conf 在最后面添加一行 include /usr/local/web/server/nginx/*.conf;

mkdir /usr/local/web
cd /usr/local/web
mkdir server wwwlogs wwwroot   # 创建三个文件夹 wwwlogs存储各个网站站点日志   wwwroot存储各个站点前端
mkdir server/cert server/nginx   # server文件存储一些配置与证书   cert存储证书   nginx存储网站配置

例子

假如当前创建一个网站 test1.test.com域名 或者ip

cd /usr/local/web/server/nginx
vim test1.test.com.conf   # 后缀.conf 此目录已被包含到nginx里面  添加配置如下
mkdir /usr/local/web/wwwroot/test1.test.com   # 创建域名目录或IP目录 里面存储打包后的前端 

test1.test.com.conf 配置

server
{
    listen 80;
    listen 443 ssl;
    http2 on;
    server_name test1.test.com;
    index index.php index.html index.htm default.php default.htm default.html;
    root /usr/local/web/wwwroot/test1.test.com;   # 指定前端目录

    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;
    ssl_certificate    /usr/local/web/server/cert/test1.test.com/fullchain.pem;
    ssl_certificate_key    /usr/local/web/server/cert/test1.test.com/privkey.pem;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    add_header Strict-Transport-Security "max-age=31536000";
    error_page 497  https://$host$request_uri;

    #禁止访问的文件或目录
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }
    
    #一键申请SSL证书验证目录相关设置
    location ~ \.well-known{
        allow all;
    }
    
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      30d;
        error_log /dev/null;
        access_log /dev/null;
    }
    
    location ~ .*\.(js|css)?$
    {
        expires      12h;
        error_log /dev/null;
        access_log /dev/null; 
    }

    location /api/ {
        proxy_pass http://192.168.1.66:8081/;   # 指定后端地址 访问后端接口添加/api路径
        proxy_set_header Host $host; 
        proxy_set_header x-forwarded-for  $remote_addr;
    }

    access_log  /usr/local/web/wwwlogs/test1.test.com.log;   # 指定站点日志
    error_log  /usr/local/web/wwwlogs/test1.test.com_error.log;   # 指定站点错误日志
}

nginx添加新模块

安装后的nginx添加新模块时进入到

cd /usr/local/nginx/nginx-1.20.2/   # 进入到此目录
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-http_flv_module --error-log-path=/usr/local/nginx/log/nginx.log --pid-path=/usr/local/nginx/pid   # 添加--with-http_flv_module模块
make  # 重新编译,不要make install
cd objs/
mv nginx /usr/local/bigData/nginx/sbin/   # 将启动文件替换了即可

本专栏为大数据学习专栏,如有问题还望指出,共同学习!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

week@eight

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值