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

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

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

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

Ответ 1

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

Ответ 2

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

В VS 2010 существует опция использования "IIS Express" вместо VS Development Server, которая по умолчанию позволяет удаленные подключения.

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

Ответ 3

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

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

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

введите описание изображения здесь

Ответ 4

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

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

C:\Windows\system32\drivers\etc

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

Ответ 5

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

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

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

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

Ответ 6

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

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

Ответ 7

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

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

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

Итак, я просто набираю webserver: 15709 в моей VM, и он отлично работает.

Ответ 8

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

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

Ответ 9

WebMatrix - еще одна альтернатива.