Я настроил веб-сайт (веб-сайт DotNetNuke) на IIS 8.5 с операционной системой Windows Server 2012 R2 на порту 85. Я зашел на веб-сайт, используя http://localhost:85
и сайт работал хорошо. Затем я добавил еще одну привязку к веб-сайту в IIS в отношении IP-адреса, чтобы я мог получить к нему доступ как 192.168.5.187:85
. Однако я не могу получить к нему доступ через IP-адрес, так как получаю страницу с ошибкой. В частности, я получаю "404 Не Найдено страница ошибки ".
При дальнейшем исследовании я обнаружил, что веб-сайт работает только с одним портом - 85. Каждый раз, когда я изменяю привязку, чтобы указать на другой порт, веб-сайт не работает (выдает ошибку 404 Not Found). Текущая привязка сайта
IP Address Port
* 85
и сайт работает нормально. Если я изменю эту привязку на
IP Address Port
* 83 (infact anything other than 85)
сайт не работает (выдает ошибку 404 Not Found)
Подвести итоги:
Сайт не работает, когда я добавляю привязку с IP-адресом. (дает ошибку 404 Not Found)
Сайт не работает ни на каком порту кроме 85 при использовании localhost
. (дает ошибку 404 Not FOund)
Мне сложно это понять, поэтому может кто-нибудь мне помочь, так как мне нужно, чтобы этот веб-сайт был доступен через IP-адрес.
После добавления соответствующих привязок к IIS, поскольку DNN поддерживает несколько порталов в рамках одной установки и одного приложения IIS, привязки также должны быть указаны в DNN. В противном случае каждый запрос, обслуживаемый DNN, завершится ошибкой 404.
Чтобы настроить привязки на уровне DNN, псевдонимы портала (привязки) можно указать, выполнив меню «Хост> Управление сайтом» и затем отредактировав раздел Псевдонимы портала. Чтобы добавить проверку псевдонима портала http://www.dnnsoftware.com/wiki/page/portal-alias
Обратите внимание: если вы добавите другой порт, отличный от того, который вы использовали для установки DNN в первый раз, и параметр "Автоматическое добавление псевдонима сайта" не включен, после добавления привязки IIS вам также необходимо добавить новый псевдоним портала, использующий этот порт. Псевдоним портала в вашем случае будет «localhost: 83». Это связано с тем, что, хотя "Автоматическое добавление псевдонима сайта" включено по умолчанию, если вы вручную отключили эту опцию или создали второй портал, автоматические псевдонимы портала не добавляются.
Также не забудьте очистить локальный кеш (меню «Инструменты> Очистить кеш»), потому что псевдонимы портала кэшируются после инициализации приложения. При добавлении / удалении псевдонимов портала кеш автоматически очищается, но в зависимости от определенных сценариев «веб-фермы / cachingProvider» могут возникнуть сложности.
Надеюсь это поможет!
Для всех, кто сталкивается с этой проблемой, вот решение:
Каждый раз, когда вы добавляете новую привязку к веб-сайту, PortalAlias
таблица обновляется в базе данных. Это делается автоматически DNN
. Когда DNN получает запрос веб-страницы, он проверяет domain url
веб-страницы по адресам, хранящимся в PortalAlias
table и только потом обрабатывает веб-страницу. Если domain url
и адреса не совпадают, то либо 403 или 404 HTTP ошибки предоставляются как выходные данные.
Однако иногда DNN не может добавить привязку автоматически. Следовательно, если ваша веб-страница не работает с определенной привязкой IIS, начните с проверки PortaAlias
таблица в соответствующей базе данных.
Надеюсь, это поможет!!!
Возможно, другое приложение уже использует другие порты, которые вы пробовали. Откройте командную строку, запустите netstat -a и добавьте результат в свой вопрос, чтобы мы могли диагностировать, что происходит.