如何在 apache 上部署 vuejs/flask 项目
how to deploy a vuejs/flask project on apache
我创建了一个简单的项目,使用 vuejs 作为前端,flask 作为后端。
项目是按照示例here构建的,因此生成的文件结构类似于vuejs构建文件"dist"与驱动python在同一文件夹中] 脚本,run.py.
该项目已经过测试并且在本地运行良好,现在我 运行 在尝试将其部署到由 digitalocean 托管的我的 Ubuntu 服务器上时遇到了问题。
我按照这个 article 学习如何部署 - 这篇文章写得很好,但我认为我需要稍微更改 apache 配置文件 (/etc/apache2/sites-available/000-default.conf) 以指定静态我项目的文件如屏幕截图所示。
问题是如何?我不知道。当我逐字阅读文章并启动网络应用程序时,它显示如下错误:
Loading failed for the <script> with source “http://my_website.com/static/js/manifest.0e78d562f6b86d93f516.js”. vue-amazon:1:1
static 是我的文件结构中 "dist" 下的标准 vuejs 文件夹。
我发现问题与 Flask 项目的部署方式无关 - 它与 vuejs 前端的配置有关。
我需要在 vuejs 的配置文件中调整 assetsPublicPath 的设置,到 index.html 可以找到混淆的 javascript 的适当位置。
例如,如果我的项目名为 "ABC",并且我希望 url 看起来像:
http://my-site.com/ABC
我需要在 vuejs 配置文件中包含这个:
env: require('./prod.env'),
index: path.resolve(__dirname, '../../dist/index.html'),
assetsRoot: path.resolve(__dirname, '../../dist'),
assetsSubDirectory: 'static',
assetsPublicPath: '../../ABC/dist/',
在我运行
之前
npm run build
我创建了一个简单的项目,使用 vuejs 作为前端,flask 作为后端。
项目是按照示例here构建的,因此生成的文件结构类似于vuejs构建文件"dist"与驱动python在同一文件夹中] 脚本,run.py.
该项目已经过测试并且在本地运行良好,现在我 运行 在尝试将其部署到由 digitalocean 托管的我的 Ubuntu 服务器上时遇到了问题。
我按照这个 article 学习如何部署 - 这篇文章写得很好,但我认为我需要稍微更改 apache 配置文件 (/etc/apache2/sites-available/000-default.conf) 以指定静态我项目的文件如屏幕截图所示。
问题是如何?我不知道。当我逐字阅读文章并启动网络应用程序时,它显示如下错误:
Loading failed for the <script> with source “http://my_website.com/static/js/manifest.0e78d562f6b86d93f516.js”. vue-amazon:1:1
static 是我的文件结构中 "dist" 下的标准 vuejs 文件夹。
我发现问题与 Flask 项目的部署方式无关 - 它与 vuejs 前端的配置有关。
我需要在 vuejs 的配置文件中调整 assetsPublicPath 的设置,到 index.html 可以找到混淆的 javascript 的适当位置。
例如,如果我的项目名为 "ABC",并且我希望 url 看起来像:
http://my-site.com/ABC
我需要在 vuejs 配置文件中包含这个:
env: require('./prod.env'),
index: path.resolve(__dirname, '../../dist/index.html'),
assetsRoot: path.resolve(__dirname, '../../dist'),
assetsSubDirectory: 'static',
assetsPublicPath: '../../ABC/dist/',
在我运行
之前npm run build