2015-05-08 2 views
1

Я работаю над своим приложением NodeJS, размещенным в Openshift. Сейчас все работает нормально, но я хочу ускорить работу, стараясь использовать статические файлы (html, css, js) с веб-сервера, а не делать это из Express. Я где-то читал, что в картриджах Node нет сервера Apache и, следовательно, нет файла .htaccess, откуда я могу настроить Apache для отправки моих файлов.Как хранить статические ресурсы в приложении Openshift NodeJS

Как я могу обслуживать свои статические файлы с веб-сервера, такого как Apache или Nginx, из моего приложения NodeJS на Openshift?

+1

.... почему бы вам просто не использовать статические файлы с узлом? – tpie

ответ

1

Это может удовлетворить ваши потребности. Голый, как он получает статический сервер ...

var finalhandler = require('finalhandler') 
var http = require('http') 
var serveStatic = require('serve-static') 

// Serve up public/ftp folder 
var serve = serveStatic('public/', {'index': ['index.html']}) 

// Create server 
var server = http.createServer(function(req, res){ 
    var done = finalhandler(req, res) 
    serve(req, res, done) 
}) 

// Listen 
server.listen(process.env.PORT || 3000); 
0

Это было время, так как первоначальный вопрос был размещен, но, возможно, это поможет другим людям, с которыми сталкивается тот же вопрос. Взгляните на этот пользовательский картридж OpenShift: https://github.com/gsterjov/openshift-nginx-cartridge

Я не проверял его лично, но я создал другие пользовательские картриджи, и я знаю, что платформа OpenShift довольно гибкая, если вы достаточно владеете оболочкой, поэтому, если вышеуказанный картридж не соответствует вашим потребностям, вы можете легко его разветвить и настроить, как вы сочтете нужным.

Лично я почти всегда обслуживаю статические активы от Node.js. built-in static server in Express.js в последнее время стало намного лучше, и есть st, если вам нужно больше контролировать кеширование/etags.

Кроме того, я недавно натолкнулся на эту интересную альтернативу, похожую на CDN, на «классический» хостинг для статических активов: http://surge.sh. Я могу себе представить, что было бы довольно тривиально реализовать сценарий gulp/grunt для публикации ваших статических активов при всплеске при развертывании ...

Смежные вопросы