как изменить путь к библиотеке по умолчанию в Express?

например, есть путь

/www/node/node_project/public/lib

Я хочу переместить /public/lib в /lib, но оставить node_project работающим; так как папка /lib совместно использует интерфейсные библиотеки с другим проектом (возможно, проекты PHP); так как я могу перемещать папку lib?!


person Weijing Jay Lin    schedule 15.04.2016    source источник
comment
app.use(express.static('lib'));   -  person boomcode    schedule 15.04.2016
comment
Вы используете экспресс как статический веб-сервер? Я имею в виду, вы обслуживаете файлы из папки /www/node/node_project/public/lib?   -  person Nidhin David    schedule 15.04.2016
comment
@NidhinDavid Я пытался использовать /www/lib в качестве пути к моей библиотеке /node/node_project, поэтому я могу поделиться папкой lib со многими node_projects   -  person Weijing Jay Lin    schedule 15.04.2016


Ответы (1)


Вы можете установить статическую корневую папку Express как:

var app = require('express')();
var port = 3000 //The port on which your server listens
app.use(express.static('path to lib folder');
app.listen(port);

Если вы хотите указать маршрут, специфичный для папки lib, вы можете установить его как app.use(express.static('/your/route', path to lib folder');

Если ваша папка lib находится в той же папке, что и файл, который инициализирует экспресс, вы можете просто указать app.use(express.static('lib');

Если ваша папка lib является подпапкой папки, в которой инициализирован экспресс, вы можете использовать app.use(express.static(__dirname+'path to lib');

Если ваша папка lib находится в любом другом месте, укажите абсолютный путь к папке lib, например app.use(express.static('path to lib from /');

person Nidhin David    schedule 15.04.2016
comment
Да, решение работает, но есть кое-что другое, что может быть связано с различиями версий. Я использую Express 4.x, поэтому лучшим ответом будет: app.use('/lib', express.static(path.resolve('../lib'))); - person Weijing Jay Lin; 15.04.2016