Почему я получаю 403 при посещении локального сайта iisexpress, размещенного на виртуальной машине - PullRequest
0 голосов
/ 11 декабря 2018

Итак, прежде чем я начну, я знаю, как открыть IISExpress для сети, об этом много статей, Я даже написал одну .Тем не менее, эти подходы имеют ограничения - в первую очередь необходимость добавлять привязки, которые, как я обнаружил, были хитами или хуже, нарушают любой код, который работает на основе имени хоста.

Я на OsXпод управлением Windows 10 внутри Parallels, и ранее на этой неделе я подумал, что мне следует попытаться перенаправить localhost в виртуальную машину так же, как я могу это сделать с контейнерами Docker.

Я очень близко подошел, но не могу понятьпоследний шаг.Вот что я сделал и что вижу:

  1. Я временно отключил брандмауэр в Windows
  2. Я перенаправил правильный порт (в данном случае 44300) на гостевую ВМ и перезагрузилit.
  3. Я запустил iisexpress через командную строку, чтобы увидеть полный журнал (я тоже пробовал через visual studio)

Я вижу, что когда яударил localhost:44300 изнутри виртуальной машины, мой сайт загружается нормально, и всякие вещи регистрируются.

Но когда я нажимаю на него с хоста, я получаю

Ошибка HTTP403. URL-адрес запроса запрещен.

В этом сценарии iisexpress ничего не регистрирует.

Однако я знаю, что запрос каким-то образом так как если я остановлю iisexpress и снова зайду на хосте localhost:44300, то получу стандартный

localhost, который отказывается подключаться.ERR_CONNECTION_REFUSED

Тот факт, что iisexpress прослушивает или не прослушивает этот порт , следовательно, каскадно подключается к виртуальной машине хоста, но больше ничего не проходит.

Так что я немного растерялся - это похоже на связывание, но насколько известно iisexpress, из-за переадресации портов этот запрос не будет из localhost?Как это может сказать, если это не так?Даже это звучит маловероятно из-за отсутствия сообщений журнала.Кроме того, я никогда не вижу ничего всплывающего в fiddler.

Вместо этого я задаюсь вопросом, может ли быть какой-то еще один компонент Windows, который видит что-то привязанное к 44300, видит запрос, поступающий через сетевой стеки закрывает его.Это вещь?

...