Сопоставление разных путей с отдельными веб-сайтами

Запуск на IIS 8.5, у меня есть 4 разных сайта, на которых запущены приложения asp.net, скажем, a: 80, b: 7777, c: 8888 и d: 9999 (все работают на разных портах)

Есть ли способ иметь domain.com укажите на веб-сайт по умолчанию a и 3 других приложения -> domain.com/a (укажите на a: 7777), domain.com/b (укажите на b: 8888) и domain.com/c (укажите на c: 9999) и все 4 имеют отдельные пулы приложений?

Спасибо

0
задан 5 July 2016 в 17:47
2 ответа

Обычно то, что вы просите, достигается путем использования обратного прокси перед сайтами. Некоторые популярные специальные опции включают HAProxy и NGINX .

Также кажется, что IIS сам потенциально может сделать это с помощью модуля URL Rewrite. Вот сообщение в блоге с дополнительной информацией:

Бывают случаи, когда вам нужно реверсировать прокси через сервер. Наиболее распространенный пример - это когда у вас есть внутренний веб-сервер, не подключенный к Интернету, и у вас есть общедоступный веб-сервер, доступный для Интернета. Если вы хотите обслуживать трафик с внутреннего веб-сервера, вы можете сделать это через общедоступный веб-сервер, создав туннель (также известный как обратный прокси).

По сути, вы можете настроить внутренний веб-сервер с дружественным URL-адресом, даже скрытие пользовательских портов.

1
ответ дан 4 December 2019 в 16:34

Самый простой способ сделать это - добавить каждый сайт asp.net в качестве «Приложения» на том же сайте. Запустите диспетчер IIS (inetmgr), щелкните веб-сайт правой кнопкой мыши и выберите «Добавить приложение». Вам будет предложено ввести всю стандартную информацию, как если бы вы использовали веб-сайт (пул приложений, путь, контекст безопасности и т. Д.). Важной частью является «Псевдоним» - все, что вы здесь вводите, становится буквой «b» в «domain.com/b». Единственная загвоздка в том, что вам нужно будет убедиться, что ваш веб-сайт был закодирован так, чтобы допускать ссылки на файлы относительно текущего пути. Итак, когда HTML ссылается на ваш JS, CSS и изображения, все они href = "images / logo.png" вместо корневого пути-relative, будучи href = "/ images / logo.png" - это потому что вы не размещаете веб-сайт в корневом каталоге.

0
ответ дан 4 December 2019 в 16:34

Теги

Похожие вопросы