Я разрабатываю веб-приложение Express с Node JS в гибкой среде Google App Engine (управляемые виртуальные машины). В основном у меня есть только одна статическая HTML-страница, которую мне нужно обслуживать, поскольку все динамически загружается в Angular JS.Служить html-файл с NodeJS и служить-статическим
При чтении Экспресс best practices Я заметил, что они препятствуют использованию res.sendFile, что я и делал в разработке.
Поскольку я перехожу к производству, я хотел бы использовать static-serve, как было предложено, но я не смог найти документацию, объясняющую, как имитировать res.sendFile.
Ниже вы можете найти мой текущий код.
var app = express();
app.use(express.static('www'));
app.get('/', oauth2.required, function (req, res) {
// ...
res.sendFile(path.join(__dirname + '/www/dashboard.html'));
// ...
});
В производстве можно использовать сервер Nginx, чтобы служить вам статический файл и пусть вы node.js сервер обработки динамического контента. Это, как правило, наиболее оптимизированное решение для сокращения запросов на вашем сервере node.js, который медленнее статических файлов сервера, чем, например, nginx. – Aaleks
Проблема в том, что я работаю на App Engine Flexible, и я не знаю, есть ли у меня доступ к конфигурации nginx. – raz3r
Никогда не использовал его, но, похоже, после быстрого поиска в Google кажется, что можно установить собственный nginx https://cloud.google.com/appengine/docs/flexible/ Настройка инфраструктуры и https: // облако. google.com/solutions/https-load-balancing-nginx, но распространенное промежуточное ПО по умолчанию для обслуживания статических файлов будет делать трюк также app.use ('/ public', express.static (path.join (__ dirname, './public «))); – Aaleks