Php Programmaticaly使用APPCMD添加集中式SSL证书存储
我正在Php Programmaticaly使用APPCMD添加集中式SSL证书存储,php,iis,ssl-certificate,appcmd,Php,Iis,Ssl Certificate,Appcmd,我正在PHP中创建一个Web界面,用于对IIS中的网站进行基本更新。一部分是添加一个新网站并添加正确的绑定。我使用以下命令添加绑定: appcmd add site /name:"sitename" /bindings:"http://example.com:80" /physicalPath:"d:\websites" appcmd set site /site.name:"sitename" /+bindings
PHP
中创建一个Web界面,用于对IIS中的网站进行基本更新。一部分是添加一个新网站并添加正确的绑定。我使用以下命令添加绑定:
appcmd add site /name:"sitename" /bindings:"http://example.com:80" /physicalPath:"d:\websites"
appcmd set site /site.name:"sitename" /+bindings.[protocol='https',sslflags='3',bindingInformation='*:443:example.com']
我使用SSL标志3来使用中指定的集中式SSL证书存储
当站点添加了绑定和HTTP时,一切似乎都正常工作。然而,当我使用HTTPS时,它会不断给出一个连接重置错误
解决此问题的唯一方法是在IIS管理器中打开绑定,在任何SSL绑定中更改某些内容而不保存并将其更改回,只需使“确定”按钮可用并按下即可。(例如:端口到442,返回到443)实际设置中没有任何更改,applicationHost.config
这样做之后,一切都正常了
我的尝试没有成功:
绑定对话框
可以做些什么来解决这个奇怪的问题?这里有一个参考可能会有帮助:谢谢。答案就埋在那里。当运行netshhttpshowsslcert
时,我没有得到任何回复,因此我需要使用netsh
添加CCS。列出的命令显然是错误的,但它确实帮助找到了正确的命令:netshhttpaddsslcert-appid={GUID}ccs=443