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

Я помню, когда MS разрабатывал Cassini - я полагаю, что они свернули его в VS 05/08, поэтому я думаю, что это вопрос веб-сервера Cassini.

Я использую Windows XP с Visual Studio 2008 и нахожу это довольно неудобным, когда я хочу протестировать веб-страницу / стилизацию с несколькими браузерами и несколькими ОС. Прямо сейчас мне нужно развернуть код на нашем сервере, и если появятся какие-либо обновления, которые могут произойти, этот процесс превращается в довольно много времени. Поскольку я использую XP / IIS 5, вариант использования IIS не вариант. Использование IIS в XP требует дополнительного префикса для проекта, который разрывает все ссылки, CSS и т. Д. Это был также очень быстрый проект разработки, поэтому такие вещи, как root dir, которые следует вывести в конфигурацию, не являются, я довольно занят плата с этим типом решения, но она не была реализована в этом проекте. Также кажется весьма отрывочным, что MS не разрешил бы где-нибудь простой флаг разрешать удаленные подключения - это довольно просто (http://www.devx.com/dotnet/Article/11711), но я не хочу перекомпилировать Cassini.

Кто-нибудь знает, как разрешить другим компьютерам видеть интегрированный веб-сервер разработки в Visual Studio 2008? Это сэкономит массу времени.

Ответы [ 9 ]

39 голосов
/ 14 ноября 2009

только что придумал хорошее решение: 1) Установите Fiddler на машине разработки 2) Настройте удаленный компьютер для использования Fiddler в качестве прокси 3) перейдите к http://localhost.:[insert your dev port # here] / на удаленной машине

15 голосов
/ 14 ноября 2011

Извините за ответ на старый вопрос, но он занял место в Google, поэтому я решил добавить свои 2 цента:

В VS 2010 есть возможность использовать «IIS Express» вместо VS Development Server, который по умолчанию разрешает удаленные подключения.

ОБНОВЛЕНИЕ: текущая версия IIS Express не позволяет внешние подключения по умолчанию, см. ЗДЕСЬ о том, как вы можете разрешить удаленные подключения.

3 голосов
/ 24 января 2013

Вы можете использовать утилиту переадресации портов для прослушивания порта, скажем, 5000, а затем ретранслировать весь этот трафик на порт Visual Studio.

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

Я написал пост в блоге, основанный на вышеприведенной статье, в котором он кратко излагается: Удаленный доступ к веб-серверу Visual Studio .

enter image description here

2 голосов
/ 21 октября 2008

Microsoft не позволяет это специально - они не хотят, чтобы вы развертывали свое приложение с помощью Cassini. Он скомпилирован прямо в свой код .

При этом я часто задавался вопросом, проверяют ли они просто URL-адрес на "localhost". Возможно, редактирование файла HOSTS на удаленной машине и перенаправление «localhost» на машину cassini может его обмануть? Стоит попробовать ... В окнах вы можете найти ХОСТОВ здесь:

C:\Windows\system32\drivers\etc

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

0 голосов
/ 01 апреля 2013

WebMatrix является еще одной альтернативой.

0 голосов
/ 14 июля 2011

Попробуйте привязать .Net к 127.0.0.1 вместо localhost, это действительно имеет значение с разрешением в некоторых случаях, с которыми я столкнулся. Хотел бы я знать, что все это время спасло бы меня на несколько часов.

Я также видел, как используется Privoxy, что может быть быстрее, но Fiddler намного проще и не требует настройки обратной петли.

В любом случае, у меня есть настройка VS на localhost: 15709 и это в Fiddler: if (oSession.host.toLowerCase () == "веб-сервер: 15709") oSession.host = "localhost: 15709";

Так что я просто набираю webserver: 15709 на моей виртуальной машине, он прекрасно работает.

0 голосов
/ 03 декабря 2010

Используя Fiddler в качестве обратного прокси-сервера, веб-сервер разработки может получить запрос, но он становится внутренним (127.0.0.1), что в моем случае бесполезно.

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

0 голосов
/ 21 октября 2008

Я тестирую против нескольких браузеров на моем локальном компьютере. Локальный веб-сервер не заботится о том, используете ли вы Opera / Safari / Firefox / IE для подключения к нему. Обычно я запускаю проект в отладчике, который также запускает IE, а затем вырезает / вставляет URL из IE в любой браузер, с которым я тестирую. Как правило, порт, который выбирает Кассини, меняется не часто, поэтому часто URL уже присутствует в истории моего браузера. После запуска веб-сервера вы можете даже остановить отладчик и продолжить тестирование в альтернативном браузере.

Для других MacOS я обычно публикую на сервере QA с IIS6. Я нашел очень мало случаев, когда после тестирования с IE / Firefox / и т. Д. на WinXP были проблемы на Mac. Я специально не тестирую варианты Linux.

0 голосов
/ 21 октября 2008

Для решения вашей проблемы неработающих ссылок, путей к файлам и т. Д. Используйте относительные ссылки.

Кроме того, токен «~ /» (без кавычек) в URL-адресах / свойствах пути / значениях в серверных элементах управления ASP.NET будет автоматически заменен реальным путем к подпапке IIS, в которой находится ваше приложение.

Чтобы это решение работало, корневой каталог разрабатываемого вами веб-приложения должен быть приложением IIS (см. Страницы свойств вашего веб-проекта в разделе Web, где вы можете найти ссылку или кнопку для создания приложения IIS).

Корень Google для веб-приложения IIS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...