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;
        }
    }
相关推荐
fruge15 分钟前
Ubuntu服务器已下载Nginx安装包的安装指南
服务器·nginx·ubuntu
Do_GH39 分钟前
【Linux】07.Ubuntu开发环境部署
linux·运维·ubuntu
勤源科技1 小时前
全链路智能运维中的实时流处理架构与状态管理技术
运维·架构
tryCbest1 小时前
Linux使用Docker部署项目后期更新
linux·运维·docker
siriuuus1 小时前
Linux Tomcat 简单使用及 Nginx 反向代理
linux·nginx·tomcat
早睡冠军候选人3 小时前
Ansible学习----Ansible Playbook
运维·服务器·学习·云原生·容器·ansible
sulikey3 小时前
从实验出发深入理解Linux目录权限:r、w、x分别控制什么?能否进入目录到底由谁决定?
linux·运维·服务器·ubuntu·centos
li3714908904 小时前
nginx报400bad request 请求头过大异常处理
java·运维·nginx
久曲健的测试窝4 小时前
Jenkins Share Library教程 —— 开发入门
运维·servlet·jenkins
游戏开发爱好者85 小时前
FTP 抓包分析实战,命令、被动主动模式要点、FTPS 与 SFTP 区别及真机取证流程
运维·服务器·网络·ios·小程序·uni-app·iphone