nginx部署vue+flask网站

nginx部署vue+flask网站

前端为vue
后端为nginx

配置后端

请求访问过程:请求-》nginx-》uwsgi-》flask

第一步:将项目拉取到服务器上

方法一:将项目上传到github远程仓库上,再通过git pull命令拉取项目到服务器本地

方法二:可以直接使用rz命令将本地项目(直接压缩成压缩文件)传递到服务器上解压unzip命令,即可

第二步:配置uwsgi

uwsgi是用户网关接口的意思,负责将nginx获取的请求、响应数据处理成一定的格式后,发送给django或者flask处理。它的作用就是把一长串报文,拆解成请求头、请求体、请求方法等,以便后期可以直接处理数据。
安装:yum install uwsgi -y
配置方法:

  1. 在flask项目目录下创建一个uwsgi.ini文件
    vim uwsgi.ini
  2. 配置以下信息
[uwsgi]
# 监听端口:这个ip是访问flask的地址,要和flask程序的地址要一样
socket  = 127.0.0.1:8081
# 项目根目录
chdir   = /usr/local/nginx/html/my_vue_web/my_project_test
# 项目名
wsgi-file  = my_project_test.py
# 启动项目的变量名  app = Flask(__name__)  默认为app
callable = app
# 进程数 
processes   = 4
vacuum      = true
master      = true
  1. 启动uwsgi
    uwsgi --ini uwsgi.ini

第三部:配置nginx

用户访问后端api,具体配置以下信息

 server {
    listen 8080;  # 端口号
    server_name havename.cn;  # 域名  默认为localhost
    charset utf-8;
    client_max_body_size 75M;
    location / {
        include uwsgi_params;                       # 导入uwsgi配置 
        uwsgi_pass 127.0.0.1:8081;                  # 转发端口,需要和uwsgi.ini一致
        uwsgi_param UWSGI_PYTHON /usr/bin/python3;  # 系统python路径
        uwsgi_param UWSGI_CHDIR /usr/local/nginx/html/my_vue_web/my_project_test;         # 项目根目录
        uwsgi_param UWSGI_SCRIPT my_project_test:app;           # 项目的主程序,比如你主程序文件名my_project_test.py,文件中app = Flask(__name__),那么这里就填my_project_test:app 
    }
    }

即可
后端可以通过havename.cn:8080为根目录,访问后端api。例如:访问havename.cn:8080/img=>nginx转发到127.0.0.1:8081=>uwsgi处理请求,交给flask处理。

配置前端

vue-cli创建的项目,编写完成后要打包
npm run build
打包生成dist文件夹,直接将dist文件拷贝到服务器上即可
注意
如果dist文件中index.js打不开,报错Failed to load resource: net::ERR_FILE_NOT_FOUND
说明文件路径有问题,修改config/index.js,将assetsPublicPath的/改为./,绝对路径改为相对路径

配置nginx

用于用户访问接口

server {
	listen       8888;
	server_name  www.havename.cn;
	location / {
			try_files $uri $uri/ /index.html;  # 尝试直接访问uri,访问失败,则访问uri后面加/,还是失败,则访问当前路径下的index.html文件
			root /usr/local/nginx/html/my_vue_web/dist; # 前端页面路径
			index index.html index.htm;  # 在当前目录下找index.html,找不到则找index.htm
	}
	location /static {  # 静态文件:一般用于存放图片、js文件、css文件
		expires 30d;  # 静态文件有效期为30天,30天到期时,重新获取静态文件
		autoindex on; # 设置on后启用自动目录浏览功能,输入网站可以直接访问这个目录中所有文件
		alias /usr/local/nginx/html/my_vue_web/static; # 将所有访问/static路径的请求,转发到/usr/local/nginx/html/my_vue_web/static路径中  
	}
}

用户通过www.havename.cn:8888访问前端页面。
重启下nginx,配置成功。

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一些基本的步骤。首先,您需要在阿里云上购买一台服务器,并确保您拥有对该服务器的完全访问权限。然后,您可以按照以下步骤进行VueFlask应用程序的部署: 1. 安装Node.js和npm 在您的服务器上安装Node.js和npm,这将使您能够运行和构建Vue应用程序。 2. 安装Vue CLI 使用npm安装Vue CLI,这样您就可以在服务器上使用Vue CLI命令行工具创建和管理Vue项目。 3. 创建Vue项目 使用Vue CLI创建一个新的Vue项目,为此,请在终端中运行以下命令: ``` vue create my-project ``` 4. 构建Vue项目 使用npm运行构建命令,将Vue项目构建为静态文件,以便可以在Web服务器上提供它们。为此,请在终端中运行以下命令: ``` npm run build ``` 5. 安装Flask 在您的服务器上安装Flask,这将使您能够运行和管理Flask应用程序。 6. 编写Flask应用程序 使用Python和Flask编写您的应用程序代码,包括路由和视图函数等。 7. 部署Flask应用程序 将Flask应用程序部署到Web服务器,例如Nginx或Apache等。 8. 配置Web服务器 配置Web服务器以在服务器上提供VueFlask应用程序。这通常涉及到将Vue应用程序的静态文件和Flask应用程序的路由配置到Web服务器上。 以上是基本的步骤,您可以根据您的具体情况进行更改和定制。希望这可以帮助您部署Vue+Flask应用程序到阿里云服务器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值