Comment voulez-vous activer SSL pour un projet dans Visual Studio 2017?
Dans VS15, je pouvais choisir de Projet -> Propriétés -> Debug -> Activer le protocole SSL. Cette option n'est pas disponible dans VS2017. Où est-il déplacé?
Edit:
J'ai même essayé de l'édition d' .\vs\config\applicationhost.config
, en vain:
<listenerAdapters>
<add name="http" />
<add name="https" />
</listenerAdapters>
<sites>
<site name="WebSite1" id="1" serverAutoStart="true">
<application path="/">
<virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
</application>
<bindings>
<binding protocol="http" bindingInformation=":8080:localhost" />
</bindings>
</site>
<site name="Filters" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="c:\Users\Ashley\documents\visual studio 2017\Projects\Filters\src\Filters" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:51107:localhost" />
<binding protocol="https" bindingInformation="*:43107:localhost" />
</bindings>
</site>
<siteDefaults>
<logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
<traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
</siteDefaults>
<applicationDefaults applicationPool="Clr4IntegratedAppPool" />
<virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>
<webLimits />
Edit:
Une autre option, j'ai essayé, qui se sent juste maladroit, et le genre de défaites le point d'un IDE, est de configurer Crécerelle d'utiliser le protocole HTTPS. Ce n'est pas l'idéal car j'ai dû exporter une copie d'un certificat pour le localhost de IIS, IIS Express tente de charger le site sur un autre port.
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel(options =>
options.UseHttps(new X509Certificate2("path/to/cert.pfx", "password")))
.UseContentRoot(Directory.GetCurrentDirectory())
.UseUrls("http://localhost:5100", "https://localhost:4300")
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
host.Run();
}
}
Malheureusement, cela ne fonctionne pas lorsque vous exécutez à partir VS17. La première fois j'ai eu un 502.2 (je pense) d'erreur, maintenant tout ce que j'obtiens est impossible de se connecter erreur dans google Chrome. Je peux courir dotnet run
de PowerShell et il fonctionne très bien.
Comme solution de contournement, il fait le tour. Mais il ne semble pas soigné.