2015-09-14 19 views
6

Większość samouczków sugeruje, że można włączyć protokół SSL dla witryny, przechodząc do właściwości projektu, a następnie zaznaczając pole wyboru "Włącz SSL". Jednak dla moich projektów ASP.NET 5 w Visual Studio 2015 Community (Microsoft Visual Studio Community wersja 14.0.23107.0 D14REL) ta opcja nie istnieje (zobacz zrzut ekranu visual studio properties for asp.net 5 project).Włączanie protokołu SSL dla projektu ASP.NET 5 w środowisku społeczności Visual Studio 2015 RTM

Udało mi się obejść to przez ręczne dodanie powiązania protokołu https w applicationhost.config (postępując zgodnie z instrukcją poprzedzającą RTM pod numerem https://github.com/AzureADSamples/WebApp-OpenIdConnect-AspNet5), ale okazało się, że program Visual Studio nadpisuje ten plik od czasu do czasu, co zmusza mnie do wykonuj ręczną edycję w kółko.

Kiedy tworzę nowy projekt aplikacji WWW, "Włącz SSL" jest dostępny tylko wtedy, gdy używam szablonów ASP.NET 4.5, ale nie wtedy, gdy używam szablonów podglądu ASP.NET 5. Czy istnieje sposób, aby skonfigurować tę opcję dla projektów ASP.NET 5 w sposób, który trwa nadal?

Odpowiedz

10

RTM, RC2 & RC1 Odpowiedź

Trzeba użyć launchSettings.json w folderze właściwości projektu. Zanotuj ustawienie sslPort. Zauważ, że dla RC1 ASPNETCORE_ENVIRONMENT staje się Hosting:Environment.

{ 
    "iisSettings": { 
    "windowsAuthentication": false, 
    "anonymousAuthentication": true, 
    "iisExpress": { 
     "applicationUrl": "http://localhost:1025/", 
     "sslPort": 44300 
    } 
    }, 
    "profiles": { 
    "IIS Express": { 
     "commandName": "IISExpress", 
     "launchBrowser": true, 
     "environmentVariables": { 
     "ASPNETCORE_ENVIRONMENT": "Development" 
     } 
    }, 
    "web": { 
     "commandName": "web", 
     "environmentVariables": { 
     "ASPNETCORE_ENVIRONMENT": "Development" 
     } 
    } 
    } 
} 

Beta 8 Odpowiedź

można edytować plik .xproj i dodać element SSLPort je dodać ręcznie, ale to naprawdę powinny być dostępne dla każdej wersji VS i radzę Ci podnieść Emisja na stronie ASP.NET Tooling gitHub:

<PropertyGroup> 
    <SchemaVersion>2.0</SchemaVersion> 
    <DevelopmentServerPort>1025</DevelopmentServerPort> 
    <SSLPort>44300</SSLPort> 
</PropertyGroup> 

Numer portu musi być liczbą pomiędzy 44300 a 44399.

+1

Czy istnieje sposób, aby to zrobić również w komendzie "web"? –

+0

Czy istnieje odpowiedź RC2? – Blaise

+1

@Blaise Zaktualizowano dla RC2. –

-1
+0

Problem polega na tym, że był/jest błąd w panelu właściwości VS, który ukrywa go na ekranach o wysokiej rozdzielczości (https://github.com/aspnet/Tooling/issues/188#issuecomment-144479315). Zauważyłem, że możliwy jest dostęp do ustawień poprzez zmianę wielkości okna/panelu. – nazgul

11

Wpadłem na ten sam problem co ty. Problem polega na tym, że istnieją dwa "Właściwości" projektu. Jeśli klikniesz prawym przyciskiem myszy na węźle projektu w oknie Solution Explorer i wybierz Properties, zobaczysz okno właściwości, które pokazałeś powyżej, i nie, nie ma opcji "SSL Enabled" jako opcji. Jednak po wybraniu węzła projektu w Eksploratorze rozwiązań, jeśli wyświetli się "Okno właściwości" (opcja w menu Widok), zobaczysz okno właściwości (zwykle zadokowane), które ma tę opcję. Nawiasem mówiąc, różnica między dwoma oknami w menu Widok to "Okno właściwości" (ten, który chcesz) i "Strony właściwości" (ten, który pokazałeś powyżej, a nie ten właściwy). Jednak gdy dojdziesz do okna Właściwości, chociaż będziesz mógł włączyć SSL, port będzie tylko do odczytu.Po dużo czytać na ten temat, myślę wszystko co musisz zrobić, to edytować powiązań w pliku applicationhost.config że automatycznie zostaje utworzone:

ścieżka z roztworu: ./.vs/config/applicationhost.config

XPath w pliku: /configuration/system.applicationHost/sites/site[@name="{your site name here}"]/bindings/binding[@protocol="https"]/@bindingInformation="*:{port}:localhost"

+0

Dziękujemy za wskazanie lokalizacji pliku applicationhost.config w folderze .vs. Usunięcie pliku i kliknięcie "Utwórz katalog wirtualny" na stronach właściwości rozwiązało dla mnie wiele problemów. –

4

zmienić adres URL projektu w zakładce Web ustawień swój projekt do:

https://localhost:44300/

Numer portu można zmienić, ale musi być w zakresie 44300-44399.

+0

Proste rozwiązanie, które działa. Dzięki – DeclanMcD

Powiązane problemy