У меня есть веб-служба api, которую я хочу показать миру.
Итак, я создал учетную запись no-ip, загрузил ее клиентское приложение, настроил имя хоста no-ip.
Затем я публикую свой проект веб-API и создаю новый веб-сайт на моем локальном iis с помощью диспетчера IIS.
Я могу просматривать этот сайт.
Я также назначаю порт на своем веб-сайте 11992.
Вопрос: почему я вижу этот сайт на http://localhost:11992
а не на mywebiste.ddns.net:11992
?
Есть ли какие-то другие шаги, которые я должен предпринять, чтобы эта работа заработала?
Обновление: мой порт TCP 11992 не заблокирован брандмауэром Windows. По моему запросу интернет-провайдер назначает мне общедоступный IP-адрес, поэтому он не статичен.
ваш компьютер подключается к Интернету через маршрутизатор, который применяет «трансляцию NAT»?
Думаю, это маршрутизатор huawei, и я добавил порт 11992 с использованием NAT - виртуального сервера и отчетов canyouseeme.org
Успех: я вижу вашу службу на xx.239.xx.58 на порту (11992). Ваш интернет-провайдер не блокирует порт 11992. Когда я захожу на mywebsite.ddnes.net, я получаю логин администратора маршрутизатора (например, я нажимаю 192.168.1.1), но когда я пробую mywebsite.ddnes.net:11992, я получаю ошибку 404
Похоже, вы пытаетесь перейти на сайт с компьютера, на котором он размещен. Когда вы получаете доступ к нему через localhost
, машина переводит имя хоста в адрес обратной связи, 127.0.0.1
; когда вы обращаетесь к нему через fqdn, mywebiste.ddns.net
, ваш компьютер преобразует имя хоста в ваш WAN-адрес (при условии, что у вас нет локального DNS-сервера).
Чтобы обойти это, вы можете добавить запись в хозяева файл (% windir% \ system32 \ drivers \ etc). Просто добавьте запись для своего сайта:
127.0.0.1 mywebsite.ddns.net
или для IPv6:
::1 mywebsite.ddns.net
Кроме того, если вы хотите просматривать сайт с других компьютеров в вашей локальной сети, вам придется сделать то же самое на этих машинах, заменив адрес локальной сети хоста на адрес обратной связи (например, 192.168.1.xxx).
192.168.1.xxx mywebsite.ddns.net