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;
        }
    }
相关推荐
虎头金猫4 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
还是大剑师兰特4 天前
解决nginx错误:http://localhost:7000正常,http://localhost:7000/map 报错404
nginx·大剑师
AI职业加油站4 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
此冬歌咏4 天前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
xing-xing4 天前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
-梅4 天前
linux(8) 软硬链接
linux·运维·服务器
张洛闻Eren4 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
其实防守也摸鱼4 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
布裘4 天前
【银河麒麟】V4桌面图标消失,右击鼠标没反应排查
运维·银河麒麟·桌面环境
懂软件的胡子个哥4 天前
微信机器人为什么需要“回复候选”而不是所有 AI 内容直接发送
运维·微信·自动化·wechatapi·个人微信号二次开发