Rozwijam projekt w VS2010 i mogę przeglądać moją witrynę lokalnie za pośrednictwem IIS Express. Chciałbym umożliwić dostęp zewnętrzny przez sieć.
Wszystkie moje badania skierowały mnie do tego wpisu na blogu: http://blogs.iis.net/vaidyg/archive/2010/07/29/serving-external-traffic-with-webmatrix-beta.aspx , który jest pomocny, ale tak nie wydaje się pokazywać, jak skonfigurować powiązania dla projektu uruchomionego w Visual Studio (nie mogę znaleźć ekranu na zrzutach ekranu, a informacje o powiązaniu edytowałem w pliku applicationhost.config, ale nie wydaje się, aby było to odzwierciedlone, gdy uruchamiam witrynę z studio wizualne).
visual-studio
visual-studio-2010
iis-express
szorstki
źródło
źródło
Odpowiedzi:
1 Po edycji pliku applicationhost.config (znajdującego się w folderze IISExpress w twoich dokumentach), twoje powiązania witryny powinny wyglądać jak poniżej:
Wiązania składają się z trzech części. Najpierw adres IP lub lista, lub jak w tym przypadku, symbol wieloznaczny. Po drugie numer portu, a po trzecie nazwa hosta, lista lub symbol wieloznaczny (do filtrowania według
Host
nagłówka). Do celów programistycznych najbardziej odpowiedni jest symbol wieloznaczny, ponieważ prawdopodobnie będziesz używać unikalnego portu.2 Ponieważ używasz powiązania hosta innego niż lokalny, wymagane są dodatkowe uprawnienia. Możesz uruchomić VS jako administrator lub najlepiej dodać listy ACL URL, aby przyznać wymagane uprawnienia. W poniższym przykładzie uprawnienia są przyznawane wszystkim, ale możesz użyć własnej nazwy użytkownika.
Uwaga:
urlacl
musi dokładnie odpowiadać wiążące. A więcurlacl
forhttp://*:8080
pozwoli na wiązanie*:8080:*
, ale nie na wiązanie,*:8080:localhost
nawet jeśli to drugie jest podzbiorem pierwszego. oznacza to, że jeśli zamiast używać symbolu wieloznacznego, podajesz nagłówki hostów wapplicationhost.config
, musisz dodać dopasowanieurlacl
dla każdego.Uwaga 2 Jeśli uruchomienie VS jako administrator lub dodanie wpisów ACL nie rozwiąże problemu, uruchom IIS Express z wiersza polecenia i sprawdź, czy są jakieś komunikaty o niepowodzeniach rejestracji powiązań. Aby rozpocząć od wiersza poleceń, wydaj to polecenie:
3 Wreszcie będziesz potrzebować odpowiednich wpisów firewalla. W tym celu najłatwiej jest użyć konsoli „Zapora systemu Windows z zaawansowanymi zabezpieczeniami”.
W sekcji „Reguły przychodzące” wybierz „Nowa reguła…”.
40000-65534
obejmujący cały zakres używany przez program Visual Studio, ale pamiętaj, że jest to mniej bezpieczne).źródło
C:\<Path\To\Solution>\.vs\config\applicationhost.config
. (Dzięki, @Talon)Spędziłem wiele godzin nad tym problemem, próbując przeglądać z mojego Androida Xoom na mój komputer deweloperski win7, aby móc przetestować nową aplikację internetową asp.net, którą utworzyłem. Wszystko, co zrobiłem, to zmieniłem plik applicationhost.config w IISExpress z używania nazwy hosta komputera na aktualny adres IP komputera dla mojej nowej witryny.
do
Kiedy to zrobiłem i ponownie uruchomiłem IISExpress ... mogłem przejść do mojej maszyny dev-Lee i zobaczyć moją aplikację na moim Xoom!
źródło
Możemy dodać wiele adresów powiązań, edytując applicationhost.config w IIS Express
Teraz możemy uzyskać dostęp do strony internetowej z sieci LAN za pomocą adresu IP.
Dostęp do lokalnych witryn z sieci LAN przy użyciu IIS Express
źródło
Visual Studio 2013 SP1 i nowsze (2015) zawierają ustawienie „Zastosuj ustawienia serwera do wszystkich użytkowników (zapisz w pliku projektu)”. Jest to domyślnie włączone. Po włączeniu Visual Studio uruchamia IIS Express z argumentami wiersza polecenia, które powodują, że używa innego pliku konfiguracji. Lokalizacja pliku „applicationhost.config” znajduje się w katalogu projektu w „.vs \ config”.
źródło
Stworzyliśmy darmowe rozszerzenie VS (2012, 2013, 2015) o nazwie Conveyor, które na to pozwala - możesz je znaleźć poprzez menu Narzędzia-> Rozszerzenia ... w VS lub na stronie galerii https://visualstudiogallery.msdn.microsoft. com / a429dbb7-a982-4541-b401-934375c02c0f? SRC = Strona główna
źródło
Jeśli pracujesz z programem Visual Studio, wykonaj następujące kroki, aby uzyskać dostęp do IIS-Express przez adres IP:
ipconfig
w wierszu poleceń systemu Windows<site name="WebApplication3" id="2"> <application path="/" applicationPool="Clr4IntegratedAppPool"> <virtualDirectory path="/" physicalPath="C:\Users\user.name\Source\Repos\protoype-one\WebApplication3" /> </application> <bindings> <binding protocol="http" bindingInformation="*:62549:localhost" /> </bindings> </site>
<binding protocol="http" bindingInformation="*:62549:192.168.178.108"/>
z Twoim adresem IP
Chodzi o to, że Visual Studio ma swój własny plik applicationHost.config!
źródło
Miałem duży problem z uruchomieniem tego z Visual Studio 2012, przeszedłem od błędów 404 do błędów 503. Ostatecznie pomogło mi usunięcie całej powiązanej konfiguracji z konfiguracji IIS Express ...
Następnie utworzyłem nowy katalog wirtualny ze strony właściwości w moim projekcie internetowym w VS, ale zanim utworzyłem katalog wirtualny, zmieniłem nazwę hosta na http: // myhost: 80 / a następnie przycisk tworzenia katalogu wirtualnego. Wcześniej otrzymywałem błędy z informacją, że nazwa hosta musi być „localhost”, ale tym razem tak się nie stało. A potem zadziałało.
Krótko mówiąc, najpierw wyczyść istniejącą konfigurację i zacznij od nowa.
źródło
Jeśli Twoja domena zewnętrzna to „name.mydyndns.com”, musisz napisać:
Działa to w systemie Windows 2003 Server i IIS 7.5 Express.
źródło
w puli aplikacji w usługach IIS ustaw opcję „Włącz aplikacje 32-bitowe” na „prawda”.
źródło