Отладка сайта на хосте с виртуальной машины - PullRequest
4 голосов
/ 05 мая 2010

У меня есть машина с Windows 7, на которой размещена виртуальная машина с Windows 7. Я занимаюсь разработкой веб-приложения с использованием Visual Studio 2010 на моем хост-компьютере. Я хочу запустить приложение в режиме отладки и получить доступ к своему локальному серверу из браузера на виртуальной машине. (Цель этого состоит в том, чтобы иметь возможность отлаживать приложение, использующее проверку подлинности Windows, с использованием разных пользователей, без необходимости выходить из системы и включаться для разных пользователей на моем хост-компьютере ...)

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

В качестве примера, предположим, что я запускаю свое веб-приложение в Visual Studio на моей хост-машине, и его URL-адрес

http://localhost:62789/MyPage.aspx

Предположим также, что я запустил ipconfig в CommandPrompt на моей хост-машине и обнаружил, что IP-адрес для моей хост-машины - xxx.xxx.xxx.x. Какой URL-адрес следует ввести на виртуальной машине для доступа к моему веб-приложению?

Заранее спасибо.

EDIT:

Я настроил IIS для размещения веб-проекта. После этого я просто добавил следующую строку (xxx.xxx.xxx.xxx - мой IP-адрес) в мой файл hosts и смог получить доступ к веб-сайту с виртуальной машины:

xxx.xxx.xxx.xxx MyWebsite.net

Мне также пришлось редактировать настройки брандмауэра.

Ответы [ 2 ]

2 голосов
/ 05 мая 2010

Похоже, вы используете встроенный веб-сервер VisStudio. Я не уверен, что он может принимать запросы от любого хоста, кроме localhost.

Удаленные машины не могут подключиться к веб-серверу Visual Studio

Простое решение? Используйте IIS для размещения проекта. Как только IIS установлен (если еще не установлен), можно легко изменить параметры проекта, чтобы создать виртуальный каталог и выполнить отладку в IIS.

2 голосов
/ 05 мая 2010

Мне лично было проще всего настроить свою виртуальную машину, используя Microsoft Loopback Adapter, и назначить виртуальную машину этому адаптеру. Гостевой ОС будет присвоен собственный IP с DHCP. Использование Loopback Adapter в основном поместит хост и гостевую ОС в одну сеть. Гость сможет получить доступ только к хосту и не сможет получить доступ к Интернету.

Затем вы можете получить доступ к хосту от гостя, используя любой IP-адрес, который вы видите на хосте (запустите ipconfig/all на хосте).

Edit: FYI Я использую Virtual PC, поэтому ваш пробег может отличаться. Loopback Adapter можно бесплатно загрузить с сайта Microsoft.

Edit2: вам, вероятно, потребуется открыть порты на хост-компьютере, чтобы разрешить доступ к веб-серверу. Запрос гостевой ОС по-прежнему будет проходить через брандмауэр Windows

...