使用Elastic Beanstalk部署Vue JS Django应用程序

使用Elastic Beanstalk部署Vue JS Django应用程序,django,amazon-web-services,vue.js,amazon-elastic-beanstalk,Django,Amazon Web Services,Vue.js,Amazon Elastic Beanstalk,我有一个在本地构建的应用程序,我已经准备好部署它,但是使用Vue作为前端,Django作为后端对我来说是一件新鲜事。我当前的文件夹结构如下所示: -后端 -前端 -环境 后端文件夹是一个传统的Django项目,sqlite作为DB,前端是一个外观正常的Vue项目,而env是虚拟环境 http://localhost/api/getsomedata 我甚至不知道该怎么做,也不知道该问什么问题,但我发现人们使用AWS Elastic Beanstalk部署SPA 部署这样的应用程序最简单的方法是什

我有一个在本地构建的应用程序,我已经准备好部署它,但是使用Vue作为前端,Django作为后端对我来说是一件新鲜事。我当前的文件夹结构如下所示:

-后端
-前端
-环境

后端文件夹是一个传统的Django项目,sqlite作为DB,前端是一个外观正常的Vue项目,而env是虚拟环境

http://localhost/api/getsomedata
我甚至不知道该怎么做,也不知道该问什么问题,但我发现人们使用AWS Elastic Beanstalk部署SPA


部署这样的应用程序最简单的方法是什么?

这是我们经常使用的最佳方法

如果您正在使用ajax访问Django项目,请调用

1.创建项目的构建

  • 创建构建后,您需要使用s3或任何其他首选静态托管将此构建托管到某个URL

  • 现在您需要使用EB部署Django项目,一旦部署项目,您将获得一个自动生成的URL

  • 在前端项目中,需要在配置中设置一个环境变量,以便无论何时构建项目,所有ajax调用都将重定向到elastic beanstalk自动生成的URL,无论何时在本地工作,所有调用都将重定向到localhost URL

  • 下面的代码并不是完全正确的,只是对您的baseurl应该是什么样子的一个粗略概念

    env.APILINK=env.build? 'beanstalkurl':'localhost'
    
    确保向axios或任何其他ajax调用添加基本URL, 一旦您根据工作环境设置了baseurl,所有ajax调用都将相应地重定向

    对于开发环境

    http://localhost/api/getsomedata
    
    对于prod环境,它实际上是一个构建

    http://beanstalkurl/api/getsomedata