您如何在本地主机上使用 https / SSL?
Posted
技术标签:
【中文标题】您如何在本地主机上使用 https / SSL?【英文标题】:How do you use https / SSL on localhost? 【发布时间】:2011-08-17 23:29:57 【问题描述】:我想知道如何在本地主机上的 Web 应用程序上设置 SSL。
我没有这样做的背景,希望得到指导。我已经完成了我的 Web 应用程序的实现,我需要它在本地主机上使用 https,或者在我将它托管在服务器上时使用它。
有什么想法吗?
问候。
【问题讨论】:
查看类似帖子:***.com/questions/36037510/… 【参考方案1】:如果您有 IIS Express(使用 Visual Studio):
要在 IIS Express 中启用 SSL,您只需设置“SSL Enabled = true”在项目属性窗口中。
在this code project查看步骤和图片。
IIS Express 将为您生成证书(系统会提示您输入证书等)。请注意,根据配置,站点可能仍会自动以 URL 而不是 SSL URL 开始。您可以看到 SSL URL - 记下端口号并在浏览器地址栏中替换它,您应该可以进入并测试。
从那里您可以右键单击您的项目,单击属性页,然后启动选项并分配启动 URL - 将新的 https 与新端口(通常为 44301 - 注意与端口 443 的相似之处)放入,您的项目将启动从此正确。
【讨论】:
我可以选择端口吗?即使用默认的 https 端口;端口 443? @TheRedPea 在我遇到的每一种情况下,您都需要使用端口 44301 在本地进行测试,而不是使用端口 443。这不会影响您用于实时服务器的端口(在 IIS 中绑定) ),假设您使用的是 https,它几乎总是 443。【参考方案2】:创建自签名证书、将其导入并将其绑定到您的网站很容易。
1.) 创建自签名证书:
从提升的命令提示符中一次运行以下 4 个命令:
cd C:\Program Files (x86)\Windows Kits\8.1\bin\x64
makecert -r -n "CN=localhost" -b 01/01/2000 -e 01/01/2099 -eku 1.3.6.1.5.5.7.3.3 -sv localhost.pvk localhost.cer
cert2spc localhost.cer localhost.spc
pvk2pfx -pvk localhost.pvk -spc localhost.spc -pfx localhost.pfx
2.) 将证书导入受信任的根证书颁发机构存储:
开始 --> 运行 --> mmc.exe --> 证书插件 --> “受信任的根证书颁发机构” --> 证书
右键单击证书 --> 所有任务 --> 导入 在 C:\Program Files (x86)\Windows Kits\8.1\bin\x64\ 找到您的“localhost”证书
3.) 将证书绑定到网站:
开始 --> (IIS) 管理器 --> 点击您的服务器 --> 点击站点 --> 点击您的***站点 --> 绑定
添加或编辑 https 的绑定并选择名为“localhost”的 SSL 证书。
4.) 将证书导入 Chrome:
Chrome 设置 --> 管理证书 --> 从 C:\certificates\ 文件夹导入 .pfx 证书
通过打开 Chrome 并导航到 https://localhost/ 来测试证书
【讨论】:
如何获取刚才在命令makecert
中使用的文件? localhost.pvk localhost.cer cert2spc localhost.cer localhost.spc
。我如何获取 private.key 文件来制作 allinone.pem 文件以在其他网络服务器中使用,然后在 IIS 中使用?
如果您不想将证书导入 Chrome,您可以选择禁用 Chrome 安全功能,该功能会阻止访问本地主机上的自签名证书***.com/a/31900210/2733283【参考方案3】:
这个问题真的很老了,但是当我在寻找最简单快捷的方法时,我遇到了这个页面。使用 Webpack 要简单得多:
安装 webpack-dev-server
npm i -g webpack-dev-server
使用 https 启动 webpack-dev-server
webpack-dev-server --https
【讨论】:
这将提供构成应用程序的 js 文件,但不运行应用程序。 它可以与现有的开发服务器(如 XAMPP)一起使用吗?以上是关于您如何在本地主机上使用 https / SSL?的主要内容,如果未能解决你的问题,请参考以下文章