2015-06-22 3 views
0

Я заметил, что когда я перехожу к localhost:8080/server.js (где, на мой взгляд, server.js - сервер-expressjs), код моего сервера отображается в браузере!Node Server - Исходный код доступен

Даже, если я загрузить приложение OpenShift, я получаю тот же результат (вы можете проверить это):

http://tickets-shkobba125.rhcloud.com/ 
http://tickets-shkobba125.rhcloud.com/server.js 

Это вопрос безопасности? Как я могу защитить свой сервер?

UPDATE

Вот мои средние-изделия:

app.use(express.static(__dirname + '/public')); // set the static files location /public/img will be /img for users 
app.use(express.static(__dirname + '/')); 

Вот моя структура проекта: enter image description here

ответ

1

Очевидный ответ изменить каталог, используемый в express.static() промежуточного слоя, если вам используя это. Как правило, существует public или аналогичный каталог, который вы создадите, который содержит только ваших общественных активов.

Удалите app.use(express.static(__dirname + '/'));, это то, что позволяет публиковать ваш код.

+0

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

+0

Если ваши другие (общедоступные) файлы js находятся за пределами './Public', тогда вы должны переместить их туда. – mscdex

+0

моя общая папка предназначена только для хранения только угловых js-файлов. я буду искать решение –