Santer0101 2024-05-01 20:01 采纳率: 42.9%
浏览 18

vue2+flask前后端分离项目部署上线

已经实现了一个vue2+flask前后端分离的web项目,可以正常在本地运行。现在租了一个腾讯云的服务器,想知道如何将这个项目部署到云服务器上让其它的电脑也能访问?

  • 写回答

5条回答 默认 最新

  • 码农阿豪@新空间代码工作室 Java领域优质创作者 2024-05-01 20:02
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    为了将项目部署到云服务器上,我们将需要以下步骤:
    1. 确定云服务器的操作系统和配置。通常来说,云服务器的操作系统和配置会影响到项目的部署方式,例如需要安装的软件、端口配置等等。
    2. 在服务器上安装必要的软件。根据项目需要,在服务器上安装必要的软件,例如Nginx、MySQL、Node.js等等。
    3. 将项目代码上传到服务器上。可以使用FTP或者命令行将本地的项目代码上传到服务器上。
    4. 设置服务器的环境变量和运行脚本。通常情况下,我们需要编辑服务器上的环境变量,例如设置Node.js的路径等等。同时,我们还需要编写运行脚本,例如启动Node.js服务器、启动Nginx等等。
    5. 配置防火墙和安全组规则。为了保障服务器的安全性,需要配置防火墙和安全组规则,例如允许指定端口的访问等等。 案例: 假设我们的项目代码已经上传到了云服务器的/home/project目录中,服务器的操作系统是Ubuntu 20.04 LTS,需要安装Nginx和Node.js,运行项目的命令是npm run start。我们可以按照以下步骤部署项目:
    6. 安装必要的软件。
    sudo apt-get update
    sudo apt-get install nginx
    sudo apt-get install nodejs
    sudo apt-get install npm
    
    1. 编辑Nginx的配置文件。
    sudo vi /etc/nginx/sites-available/default
    

    将Nginx的配置文件修改为以下内容:

    server {
        listen 80;
        server_name example.com;
        location / {
            proxy_pass http://localhost:8080;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;  
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
    }
    

    请将example.com修改为服务器的IP地址或者域名。 3. 运行项目。

    cd /home/project
    npm install
    npm run start
    
    1. 配置防火墙和安全组规则。 将服务器的防火墙和安全组规则配置为允许80端口的访问。 代码: 以上的操作都可以通过命令行完成,如果需要自动化部署,可以通过编写Shell脚本来实现,例如:
    #!/bin/bash
    # 安装必要的软件
    sudo apt-get update
    sudo apt-get install nginx
    sudo apt-get install nodejs
    sudo apt-get install npm
    # 修改Nginx的配置文件
    sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.original
    sudo rm /etc/nginx/sites-available/default
    sudo touch /etc/nginx/sites-available/default
    echo "server {
        listen 80;
        server_name example.com;
        location / {
            proxy_pass http://localhost:8080;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;  
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
    }" | sudo tee -a /etc/nginx/sites-available/default
    # 运行项目
    cd /home/project
    npm install
    npm run start
    # 配置防火墙和安全组规则
    sudo ufw allow 80/tcp
    
    评论

报告相同问题?

问题事件

  • 创建了问题 5月1日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见