我试图在谷歌云应用程序引擎中托管一个Angular应用程序。使用express来服务的内容和静态应该来自google CDN。
Dist已构建并交付给CDN。CDN桶也已共享。
我把它作为一个基本的快速应用程序,从本地。/dist文件夹中提供静态内容。如何配置这对CDN工作?
'use strict';
var express = require('express');
var app = express();
app.use(express.static('dist'));
app.get('/', function (req, res) {
res.render('index.html');
});
var server = app.listen(process.env.PORT || '8080', function () {
console.log('App listening on port %s', server.address().port);
console.log('Press Ctrl+C to quit.');
});
感谢指教。
谢谢! !
如果您从cdn提供静态内容,则根本不需要使用express static。只需使用cdn url指向资产。
一个非常典型的事情可能是有一个帮助加载正确的cdn url在你的模板。像这样:<head>
<link href="{{cdn '/css/app.css'}}">
</head>
在开发模式下,它只是解析为http://localhost:3000/css/app.css,但在生产中,它可能是https://cdn-something.com/2.10.2…
您可以在开发环境中有条件地加载express静态中间件。或者,你也可以使用apache、nginx等工具在本地提供静态资源,甚至可以在与应用程序不同的端口上使用另一个节点进程。