ExpressJS - 在开发中使用本地文件,在生产中使用 Azure Blob 存储中的文件
ExpressJS - Using local files in development and files from Azure Blob Storage in production
我计划在 express 上重新构建一个应用程序,其中包含从 azure blob 存储中检索到的静态资产。在我的 jade 文件和 Sass 中切换引用的最简单方法是什么,以便在工作时 locally/development,express 查找本地资产,而在推送到生产环境时它从 azure 查找资产?
我在构建过程中使用 Gulp,所以在构建过程中进行构建更好,还是直接在应用程序中作为一种方法?
为了这个答案,我假设两个环境(prod 和 testing/development)都是 Linux。
在环境 运行 您的 express 服务中,您可以执行以下命令,这将使 express 了解它 运行 在哪个环境中。这将在重新启动时保存状态。将 "production" 替换为服务在该机器 (development/production/testing/etc) 上的任何环境 运行。
$ echo export NODE_ENV=production >> ~\.bash_profile
$ source ~/.bash_profile
现在,在您的 app.js 文件中,您可以通过修改以下代码片段来配置您的应用程序引用:
app.configure('development', function() {
// Set an application variable to use local resources
});
app.configure('production', function() {
// Set an application variable to use Azure Blob Storage
});
我计划在 express 上重新构建一个应用程序,其中包含从 azure blob 存储中检索到的静态资产。在我的 jade 文件和 Sass 中切换引用的最简单方法是什么,以便在工作时 locally/development,express 查找本地资产,而在推送到生产环境时它从 azure 查找资产?
我在构建过程中使用 Gulp,所以在构建过程中进行构建更好,还是直接在应用程序中作为一种方法?
为了这个答案,我假设两个环境(prod 和 testing/development)都是 Linux。
在环境 运行 您的 express 服务中,您可以执行以下命令,这将使 express 了解它 运行 在哪个环境中。这将在重新启动时保存状态。将 "production" 替换为服务在该机器 (development/production/testing/etc) 上的任何环境 运行。
$ echo export NODE_ENV=production >> ~\.bash_profile
$ source ~/.bash_profile
现在,在您的 app.js 文件中,您可以通过修改以下代码片段来配置您的应用程序引用:
app.configure('development', function() {
// Set an application variable to use local resources
});
app.configure('production', function() {
// Set an application variable to use Azure Blob Storage
});