我试过在线搜索,但我感到很困惑。我没有弄清楚。
答案 0 :(得分:23)
从链接复制:
在WAMP上启用SSL
此分步指南介绍了如何在WAMP上启用SSL。
从here下载WampServer 2.0并将其安装到默认位置(c:\ wamp)。
现在,我们需要一个私钥/公钥对以及一个CA来签署我们的公钥。
首先,让我们看看如何创建私钥/公钥对。
keytool -genkey -alias rpcert -keyalg RSA -keysize 1024 -dname "CN=identity-rp,L=SL,S=WS,C=LK" -keypass wso2key -keystore rpkeystore.jks -storepass wso2key
这将创建一个带有公钥/私钥对的密钥库[rpkeystore.jks]。
我的previous post说明了如何从密钥库导出私钥。只需按照那里给出的步骤操作,您将得到一个文件server.key,这是您的私钥。
现在,我们需要使用CA签署我们的公共证书。
这 - 要求我们创建一个示例CA,并说明如何执行此操作。
这里我们使用OpenSSL构建所需的CA基础架构。对于Windows,您可以下载Win32 OpenSSL v0.9.8g from here。
安装完成后,请确保将C:\OpenSSL\bin [i.e [INSTALLED_LOCATION]\bin]
添加到PATH env变量。
openssl req -x509 -newkey rsa:1024 -keyout cakey.pem -out cacert.crt
以上内容将为我们的示例CA创建公钥/私钥对。
现在,我们需要为服务器创建证书签名请求。
转到创建密钥库[rpkeystore.jks]的文件夹,然后发出以下命令。
keytool -certreq -v -alias rpcert -file csr.pem -keypass wso2key -storepass wso2key -keystore rpkeystore.jks
现在将csr.pem复制到为CA生成密钥的文件夹中,然后从那里发出以下命令。
openssl x509 -req -days 365 -in csr.pem -CA cacert.crt -CAkey cakey.pem -CAcreateserial -out server.crt
到目前为止,我们已经收到了所有需要的文件。
cacert.crt - > CA公共证书 server.crt - > CA签署的服务器公共证书 server.key - >服务器私钥。
假设您已将WAMP安装到默认位置,请将以上三个文件复制到c:\wamp\bin\apache\apache2.2.8\conf
。
同时编辑c:\ WINDOWS \ system32 \ drivers \ etc \ hosts文件并添加以下条目。
127.0.0.1 identity-rp
如果您记得,当我们为服务器创建公共证书时,我们为identity-rp创建了它。
取消注释以下两行。
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
查找Listen 80并将其更改为Listen 12081 - 这是我们的服务器在端口号12081上运行。
查找ServerName并将其设置为ServerName identity-rp:12081。
编辑httpd-ssl.conf [C:\ wamp \ bin \ apache \ apache2.2.8 \ conf \ extra]
设置Listen identity-rp:12444 - 我们正在侦听端口12444以进行安全通信。
设置
设置DocumentRoot“C:/ wamp / www /”
设置ServerName identity-rp:12444
对于整个文件,找到“C:/ Program Files / Apache Software Foundation / Apache2.2”并替换为“C:/wamp/bin/apache/apache2.2.8”。
查找SSLCertificateFile并设置SSLCertificateFile“C:/wamp/bin/apache/apache2.2.8/conf/server.crt”
查找SSLCertificateKeyFile并设置SSLCertificateKeyFile“C:/wamp/bin/apache/apache2.2.8/conf/server.key”
查找SSLCACertificateFile并设置SSLCACertificateFile“C:/wamp/bin/apache/apache2.2.8/conf/cacert.crt”
取消注释第extension=php_openssl.dll
行
现在我们完成了 - 进行语法检查并启动apache服务器。
产品:> cd C:\ wamp \ bin \ apache \ apache2.2.8 \ bin 产品:> httpd -t 产品:> httpd --start
在浏览器中输入https://identity-rp:12444
- 您会在浏览器中看到证书错误 - 以避免在浏览器中安装CA证书。
答案 1 :(得分:6)
本地主机SSL / HTTPS通信的简便方法:
在php.ini
*取消评论和更改:
curl.cainfo = "c:/wamp/bin/php/php5.5.12/cacert.pem"
php.ini
来查找计算机上php --ini
文件的位置答案 2 :(得分:1)
(这里是source,其中提供了所有必需的分步命令)。但是,由于文本较大,因此我减少了工作流程:
ssl_module
和socache_shmcb_module
。private.key
和certificate.crt
放入apacheXX\conf\
文件夹中。 apacheXX\conf\httpd.conf
中取消注释此行:Include conf/extra/httpd-ssl.conf
apacheXX\conf\extra\httpd-ssl.conf
并应用以下更改:
在下面的行:<VirtualHost _default_:443>
找到并设置它们: ServerName localhost:443
SSLCertificateFile "../path/to/../conf/certificate.crt"
SSLCertificateKeyFile "../path/to/../conf/private.key"
保存文件并关闭它。然后,您可以加载https://localhost/