У меня есть express сервер, обслуживающий две отдельные страницы по одному и тому же маршруту, но какая страница отправляется, зависит от имени хоста. Например:
app.get('/', (req, res) =>{
if (req.hostname.includes('name1.')) {
app.use(express.static('/var/www/html'))
res.sendFile('/var/www/html/index.html');
}
if (req.hostname.includes('name2.')) {
app.use(basicAuth({
users: { 'bcit': 'mech2020' },
challenge: true,
}));
app.use(express.static('/var/www/html/workload/build'))
res.sendFile('/var/www/html/workload/build/index.html');
}
});
Я бы зашел на каждый сайт, зайдя по адресу name1.mydomainName.com или name2.myDomainName.com. У них один и тот же маршрут, только другое имя хоста.
Я хотел бы добавить express -basi c -auth для случая, когда появляется имя хоста name2, а не для name1. Я знаю, что могу добавить аутентификацию в качестве промежуточного программного обеспечения к указанному c маршруту, но если я сделаю это, и для name1, и для name2 потребуется аутентификация.
Как бы я go сказал, что мне нужно просто ввести аутентификацию для одного из имена хостов?