Я развернул веб-сайт интрасети нашей компании на сервере IIS 7 и добавил следующую информацию о привязке.
IP-адрес: Все Неназначенный порт: 3333 имя домена: subdomain_name.domain_name.com
Хотя сайт развернут на порту 3333, я хочу иметь доступ к сайту без порта.
Я также добавил запись в DNS. Я могу пропинговать полное доменное имя (subdomain.domain.com), но когда я добавляю этот URL-адрес в браузере, я получаю 404.
Когда сайт развернут под 80 портом, он работает нормально. Однако это не работает, если мой сайт размещен на чем-либо, кроме порта по умолчанию (80).
Есть ли способ сделать это?
Когда вы вводите URL без порта, подразумевается порт 80.
Ни один из известных мне браузеров не может изменить это поведение; если вы хотите использовать порт 3333, он вам понадобится в URL-адресе.
Ты можешь использовать Обратный прокси для тихого перенаправления всех HTTP-запросов на другой порт. Очевидно, что все еще должен быть сайт, привязанный к TCP-порту 80 (то есть порт, который используется, когда не указан конкретный порт), который вы настроите для такого перенаправления на другой порт.
Это возможно с помощью модуля IIS 7 + URL Rewrite + маршрутизации запросов приложений (или IIS 7 + Helicon Ape, если вы предпочитаете конфигурацию в стиле Apache).
Вопрос в том, что если вы можете привязать сайт к порту 80, зачем вам тогда запускать его на порту 3333?
Когда вы назначаете сайт IIS порту TCP, процесс IIS фактически привязывается к порту TCP. Это означает, что любое соединение (без фильтрации на уровне стека, например программный брандмауэр), поступающее на этот порт TCP, обслуживается этим экземпляром сайта IIS.
Что вы могли бы сделать:
Например, пользователь нажимает: http: // redmine
Все, что сделал пользователь, было поражено http: // redmine
Это, очевидно, позволяет размещать несколько сайтов на одном компьютере. «Виртуальный хост», если хотите.