linux环境nginx安装及使用

nginx

安装

1、安装相关插件

一次安装

linux 复制代码
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

单独安装(一次安装有问题时可使用)

yum install gcc-
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

作用

  1. gcc 可以编译 C,C++,Ada,Object C和Java等语言(安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境)

  2. pcre pcre-devel pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库

  3. zlib zlib-devel zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装

  4. openssl openssl-devel OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。

    5.nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库

2、安装nginx

方案1、下载好压缩包然后上传

nginx下载地址

linux 复制代码
https://nginx.org/en/download.html

上传压缩包

linux 复制代码
scp -r  /Users/cc/Downloads/xxx root@xxx:/usr/local/share

方案2、使用wget命令下载

下载wget

yum install wget

下载nginx

linux 复制代码
wgte https://nginx.org/download/nginx-1.21.6.tar.gz

3、解压安装包

tar xvf nginx-1.21.6.tar.gz
cd nginx-1.21.6

4、配置

linux 复制代码
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

5、编译

linux 复制代码
make

6、安装

linux 复制代码
make install

7、查看安装路径

linux 复制代码
whereis nginx

常用命令

开启防火墙、关闭防火墙、查看防火墙状态

linux 复制代码
systemctl start firewalld.service 
systemctl stop firewalld.service 
systemctl status firewalld.service 

启动

linux 复制代码
/usr/local/nginx/sbin/nginx

重启

linux 复制代码
/usr/local/nginx/sbin/nginx -s reload

查看进程

linux 复制代码
ps aux | grep nginx

配置

基本配置

linux 复制代码
server {
  listen       80; #端口号
  server_name  localhost; #域名
  location / {
      root   html;
      index  index.html index.htm;
  }
}
server {
  listen       8082; #端口号
  server_name  localhost; #域名
  location / {
      root   html;
      index  index.html index.htm;
  }
}

vue项目history模式的部署

hash模式需要部署,直接项目放入html中即可

linux 复制代码
server {
  # 部署项目的地址
  location /demo{
    root html;
    index index.html index.htm;
    try_files $uri $uri/ /demo/index.html
  }
  # 反向代理请求,解决跨域问题
  location /Api{
    proxy_pass https://xxx:8088;
  }
}

http 重定向https

linux 复制代码
server {
    listen 80;
    server_name localhost;
    #将请求转成https
    rewrite ^(.*) https://$server_name$1 permanent;
}

https配置

linux 复制代码
    server {
        listen       443 ssl;
        server_name  localhost;
 
        ssl_certificate      cert.pem;#根证书地址(默认把证书放在conf目录)
        ssl_certificate_key  cert.key;#证书秘钥(默认把证书放在conf目录)
 
        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
 
        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;
 
        location / {
            root   html;
            index  index.html index.htm;
        }
    }
相关推荐
✿ ༺ ོIT技术༻2 分钟前
Linux:认识文件系统
linux·运维·服务器
会掉头发30 分钟前
Linux进程通信之共享内存
linux·运维·共享内存·进程通信
我言秋日胜春朝★32 分钟前
【Linux】冯诺依曼体系、再谈操作系统
linux·运维·服务器
饮啦冰美式1 小时前
22.04Ubuntu---ROS2使用rclcpp编写节点
linux·运维·ubuntu
wowocpp1 小时前
ubuntu 22.04 server 安装 和 初始化 LTS
linux·运维·ubuntu
Lign173141 小时前
ubuntu unrar解压 中文文件名异常问题解决
linux·运维·ubuntu
大霞上仙2 小时前
Ubuntu系统电脑没有WiFi适配器
linux·运维·电脑
Karoku0662 小时前
【企业级分布式系统】Zabbix监控系统与部署安装
运维·服务器·数据库·redis·mysql·zabbix
为什么这亚子3 小时前
九、Go语言快速入门之map
运维·开发语言·后端·算法·云原生·golang·云计算
布值倒区什么name3 小时前
bug日常记录responded with a status of 413 (Request Entity Too Large)
运维·服务器·bug