• 内网/外网实现部署nginx服务


    1.安装nginx的前置依赖

    外网环境直接通过yum安装依赖
    yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

    内网环境需要提前下载rpm或压缩包来安装
    这里来通过rpm包安装,用压缩包安装总是遇见诡异的bug
    在这里插入图片描述
    已经整理到网盘中,可以直接下载
    链接:https://pan.baidu.com/s/1byqQbl72RSzaYyHWYjeupw
    提取码:1199

    1.cd /user/local
    2.mkdir rpmback
    3.cd rpmback
    4.rz
    安装rpm包
    5.rpm -Uvh *.rpm --nodeps --force
    在这里插入图片描述

    2.安装nginx并初始化

    1、cd /usr/local
    2、mkdir nginx
    3、cd nginx
    //下载tar包
    4、wget http://nginx.org/download/nginx-1.20.2.tar.gz
    上传nginx-1.20.2.tar.gz
    //解压tar包
    5、tar -xvf nginx-1.20.2.tar.gz
    6、cd nginx-1.20.2
    //执行命令
    7、./configure
    在这里插入图片描述

    //执行make命令
    8、make
    //执行make install命令
    9、make install
    执行后上面命令后刷新一下当前目录。
    10、cd conf

    编辑nginx.conf文件,配置你的nginx,开始写个简单的接口代理吧

    #user  nobody;
    worker_processes  1;
     
    #error_log  logs/error.log;
    #error_log  logs/error.log  notice;
    #error_log  logs/error.log  info;
     
    #pid        logs/nginx.pid;
     
     
    events {
        worker_connections  1024;
    }
     
     
    http {
        include       mime.types;
        default_type  application/octet-stream;
     
        #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
        #                  '$status $body_bytes_sent "$http_referer" '
        #                  '"$http_user_agent" "$http_x_forwarded_for"';
     
        #access_log  logs/access.log  main;
     
        sendfile        on;
        #tcp_nopush     on;
     
        #keepalive_timeout  0;
        keepalive_timeout  65;
     
        #gzip  on;
     
        server {
            listen       监听的端口;
            server_name  ip地址;
     
            #charset koi8-r;
     
            #access_log  logs/host.access.log  main;
     		
     		#浏览器键入ip端口实际访问的路径
            location / {
            		# 您的前台项目包地址
                    root   /home/dist;
                    try_files $uri $uri/ /index.html;
                    index  index.html index.htm;
            }
     		#对后台接口的简单代理
            location /prod-api/ {
            		add_header 'Access-Control-Allow-Origin' $http_origin;
           		add_header 'Access-Control-Allow-Credentials' 'true';
           		add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
           		add_header 'Access-Control-Allow-Headers' 'Authorization';
           		add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
           		if ($request_method = 'OPTIONS') {
                    	add_header 'Content-Type' 'text/plain; charset=utf-8';
                    	add_header 'Content-Length' 0;
                    	return 204;
    			}
                    proxy_set_header Host $http_host;
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header REMOTE-HOST $remote_addr;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_pass http://IP地址:端口/;
            }
    
            location /login {
    			proxy_read_timeout 600s;
    			proxy_set_header X-Real-IP  $remote_addr;
    			proxy_set_header Host $host:$server_port;
    			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    			proxy_pass http://ip地址:端口/login;
    		}
     
            #error_page  404              /404.html;
     
            # redirect server error pages to the static page /50x.html
            #
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86

    3.配置服务器nginx环境变量

    1、vi /etc/profile
    2、添加export PATH=$PATH:/usr/local/nginx/sbin
    3、保存
    4、source profile
    //验证环境变量是否生效
    5、nginx -h

    4.上传前台项目包

    上传打包文件到nginx配置的路径中,/home/dist

    5.启动nginx

    当已经配置好nginx并上传打包文件到nginx配置前台运行地址的根目录中。
    //启动nginx
    1、 Nginx
    //停止nginx
    2、 nginx -s stop
    //重启nginx
    3、 nginx -s reload
    //查看nginx是否运行成功
    4、ps -ef | grep nginx
    打开浏览器在地址栏中键入你服务器的ip地址,看能否正确返回您需要的内容。
    后续每次修改前台代码后,打包后上传dist文件到/home目录下。运行nginx -s reload命令。

  • 相关阅读:
    【计算机毕业设计】java ssm网上宠物商店系统
    终端安全检测与防御技术
    葡萄糖-聚乙二醇-醛基/羟基 Glucose-PEG-CHO/OH
    Springboot行政审批系统ztmy2计算机毕业设计-课程设计-期末作业-毕设程序代做
    idea启动vue项目:Error:0308010C:digital envelope routines::unsupported
    2024年最新测评,6款好用的在线代码编辑器推荐
    后端统一处理返回前端日期LocalDateTime格式化去T,Long返回前端损失精度问题
    vue3左树的全选和反选
    如何快速看懂复杂代码
    【Flink】flink简介
  • 原文地址:https://blog.csdn.net/weixin_45532305/article/details/126875953