Подтвердить что ты не робот

Доступ к серверу разработки ASP.NET с другого компьютера в сети

Я хотел бы протестировать свое веб-приложение в других браузерах. Я установил Virtual PC, чтобы сделать именно это. сервер разработки ASP.NET не разрешает удаленные подключения, поэтому виртуальный компьютер (другой компьютер в сети) не может получить доступ к веб-сайту.

Я нашел этот пост, который был запущен, но не было никакого решения.

Я понимаю, что использование localhost не будет работать. Я слышал об использовании машин ip, но как мне получить правильный ip? Посмотрите на мой администратор маршрутизатора lynksys?

Если мне нужно получить доступ к IP-адресу, убедитесь, что сервер asp.net dev не разрешает удаленные подключения. Как мне сделать это?

4b9b3361

Ответ 1

Я делаю некоторые догадки о вашей настройке здесь, так что несу с:

Если ваша виртуальная машина - XP Professional, Vista Business, Windows 7 Professional или выше, то вы должны иметь возможность запускать IIS локально на машине разработки и обращаться к этому веб-серверу с другого компьютера, который находится в одной сети через виртуальную машину имя.

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

В любом случае, не пытайтесь использовать встроенный веб-сервер из Visual Studio, просто публикуйте свой сайт в IIS и работайте с ним таким образом.

Удачи и надеюсь, что это поможет некоторым.

Ответ 2

Ответ: нет (*). Вы не можете получить доступ к серверу разработки ASP.NET на одном компьютере от другого, даже если вы открываете TCP-порт брандмауэра Windows.

Из статьи MSDN "Веб-серверы в Visual Web Developer" :

Он специально создан для обслуживания или запуска веб-страниц ASP.NET в сценарии локального хоста (просмотр с того же компьютера, что и веб-сервер).

Другими словами, сервер разработки ASP.NET будет обслуживать страницы для запросов браузера на локальном компьютере. Он не будет обслуживать страницы на другом компьютере. Кроме того, он не будет обслуживать файлы, находящиеся за пределами области приложения.

(*) Вам нужно будет запустить свой сайт из локально установленного IIS... или сделать хороший хак, используя бесплатную версию, описанную в этом сообщении в блоге:

iPhone Доступ к серверу разработки ASP.NET Visual Studio

Используйте SPI Port Forward, чтобы принять подключения к устройству, выполните следующие действия:

Установите "Локальный порт" на номер порта, к которому будет подключаться устройство, я обычно использую 8080 из привычки
Установите "Удаленный хост" на localhost
Установите "Удаленный порт" в порт сервера ASP.NET Dev

Нажмите кнопку "Активировать", чтобы начать прием соединений

(обратите внимание: убедитесь, что вы запустили программу с правами администратора)

Ответ 4

Другой ответ, если вы не хотите использовать IIS (или туннели): fooobar.com/questions/113107/...

Использовать скрипач или подобное на вашем хосте - установить браузер на клиенте VM для использования прокси-сервера, тогда просто используйте localhost: dev_port, как обычно, на клиент.

Все запросы от клиента переходят на прокси-сервер на вашей машине dev, маршруты на localhost на машине dev и сервер ASP.net dev думает, что запрос от вашей машины-разработчика!

Ответ 5

Я отвечаю на этот старый вопрос, чтобы помочь людям заставить его работать без IIS.

1. Первый шаг

Вам нужно скачать Fiddler.

Как только Fiddler загружается и устанавливается, откройте его.

Перейдите в Инструменты- > Вариант Fiddler- > вкладка Connection- > И установите флажок "Разрешить удаленным компьютерам подключаться":

enter image description here

Перезапустить Fiddler.

2. Второй шаг

После этого в другом ПК в сети или виртуальной машине откройте Internet explorer- > Свойства обозревателя- > Таблица подключений- > Настройки Lan- > Проверить "Использовать прокси-сервер для вашей локальной сети":

enter image description here

  • Адрес является IP-адресом вашего устройства DEV.
  • И поставьте порт 8888

Теперь вы можете получить доступ к веб-серверу ASP.NET с другого компьютера в сети (возможно, у вас есть больше настроек, таких как брандмауэр, неограниченный порт и т.д., но это хороший старт)!

Для доступа к нему → http://localhost.:54814

  • Не забывайте о дополнительной точке после "localhost"! (Перезаписать локальный локальный хост)
  • Порт "54814" в моем случае - это порт веб-сервера ASP.NET.

ПРИМЕЧАНИЕ.

  • Чтобы проверить работу прокси-сервера, вы можете попробовать следующее: http://localhost.:8888
  • Возможно, я забыл указать некоторые конфигурации, но всегда зависит от сетевой инфраструктуры.

Ответ 6

Рабочее решение для Linux

Это должно работать, если вы используете ASP.NET Dev Server для Windows в виртуальной машине или на другом хосте, и вы хотите получить к нему доступ из Linux

На компьютере с Windows

По какой-то причине вы не можете напрямую подключиться к порту сервера ASP.NET dev, вам необходимо сначала проксировать его локально:

Используйте SPI Port Forward, чтобы принять подключения к устройству, выполните следующие действия:

Установите "Локальный порт" на номер порта, к которому будет подключаться устройство, например, 8089 Установите "Удаленный хост" на localhost
Установите "Удаленный порт" в порт сервера ASP.NET Dev

Нажмите кнопку "Активировать", чтобы начать прием соединений

(обратите внимание: убедитесь, что вы запустили программу с правами администратора)

На машине Linux

Локально перемещать локальный порт 8089 в IP-адрес Windows (замените GUEST_IP_HERE на правильный ip):

iptables -t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 8089 -j DNAT --to-destination GUEST_IP_HERE:8089
iptables -t nat -A POSTROUTING -m addrtype --src-type LOCAL --dst-type UNICAST -j MASQUERADE

Это необходимо, потому что dev-сервер специально ищет localhost в запросе и не будет отвечать на http://GUEST_IP_HERE:8089 с хоста

Ответ 7

Откройте командную строку и введите ее; "ipconfig" это даст вам IP-адрес вашей машины.

Если вы отключите брандмауэр (по крайней мере, для порта ASP.NET asp.net), вы сможете ввести в виртуальный компьютер браузер http://192.168.1.3:3243/default.aspx