Сделать каталог .well-known видимым в Express 4

Мне потребовалось некоторое время, чтобы понять это, поэтому я решил оставить некоторые инструкции о том, как я это сделал, на случай, если кто-то еще столкнется с теми же проблемами.

Мне нужно было разрешить доступ к каталогу .well-known в Express, чтобы иметь возможность использовать certbot для создания SSL-сертификатов.


person brycejl    schedule 16.03.2018    source источник


Ответы (1)


Установите пакет serve-index из npm.

npm install serve-index

Импортируйте это

var serveIndex = require('serve-index');

Затем объявите промежуточное ПО

app.use('/.well-known', express.static('.well-known'), serveIndex('.well-known'));
person brycejl    schedule 16.03.2018
comment
Непонятно, нужно ли это для того, чтобы иметь возможность загружать сами файлы, или просто для того, чтобы получить какой-то список каталогов? В настоящее время я не могу обслуживать /.well-known/foo.bar с моего сервера Expressjs, и у меня это не работает… - person Hein Haraldson Berg; 12.05.2020
comment
@HeinHaraldsonBerg это было пару лет назад. Теперь я настоятельно рекомендую использовать Nginx в качестве веб-сервера вместо самого node.js. Let's encrypt имеет встроенную поддержку nginx и считается ли он стабильным и безопасным веб-сервером. Так что обслуживайте свое приложение nodejs через порт 3000, затем запустите nginx для проксирования сервера узла с порта 3000 на порт 80. Затем установите nginx, и он автоматически настроит https через порт 443 для вас. - person brycejl; 12.05.2020