Удаленные компьютеры не могут подключиться к веб-серверу 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 - еще одна альтернатива.