windows下生成证书 Apache+php-5.4.45 实现https链接

一、生成CA的服务器证书

进入命令行apache安装目录的bin文件 cd XXX\Apache\bin  (XXX为自己Apache的路径)

设置OPENSSL_CONFIG配置,执行命令 set OPENSSL_CONF=..\conf\openssl.cnf

a、生成服务端的key文件

  执行命令openssl genrsa -out server.key 1024

        在bin目录中生成server.key文件

b、生成签署申请

        执行命令:openssl req -new -out server.csr -key server.key

在bin目录中生成server.csr文件,在执行以上命令时会提示输入相关信息,其中 Common Name <eg,YOUR name>[] 需要与配置文件中的         ServerName一致,否则apache启动时将会报错。


c、生成CA的key文件

         执行命令:openssl genrsa -out ca.key 1024

         件在目录bin下生成ca.key文

d、 生成CA自签署证书

   执行命令:openssl req -new -x509 -days 365 -key ca.key -out ca.crt

      在目录bin下生成ca.crt文件

e、生成CA的服务器签署证书

执行命令:openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key (这里注意,执行前进行下方操作,不然会报错)

i)在bin目录下新建demoCA文件夹

ii)demoCA文件夹下新建index.txt

iii)demoCA文件夹下新建serial,内容编辑为: 01 (注意,这个文件去掉扩展名

iiii)demoCA文件夹下新建newcerts文件夹

f、将生成好的证书自己做好保存

二、配置安装SSL证书实现https链接

a、进入php-5.4.45文件夹下打开php.ini开启extension=php_openssl.dll。



如图点击打开修改httpd.conf配置文件,打开找到#LoadModule ssl_module modules/mod_ssl.so,去掉前面的注释符#(保证前面没有#号),使得ssl模块生效。

增加一条引用语句   Include conf/vhosts_ssl.conf


b、修改打开httpd.conf配置文件找到#LoadModule ssl_module modules/mod_ssl.so 开启使ssl模块生效。  再增加一条引用语句 Include conf/vhosts_ssl.conf(如图)


c、在conf目录下新建b步骤引用的vhosts_ssl.conf 文件,在文件中配置

Listen 443  (注意这里查看端口占用情况)
SSLStrictSNIVHostCheck off
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL
SSLProtocol all -SSLv2 -SSLv3
<VirtualHost *:443>
    DocumentRoot "XXX\WWW" (这里是web项目路径)
    ServerName localhost  (这里名字自己定)
    ServerAlias localhost  (这里名字自己定)
  <Directory "XXX\WWW">  (这里是web项目路径)
      Options FollowSymLinks ExecCGI
      AllowOverride All
      Order allow,deny
      Allow from all
      Require all granted
  </Directory>
SSLEngine on
SSLCertificateFile "XXXXX/ca.crt"  
(这里是第一步生成证书的位置)
SSLCertificateKeyFile "XXXXX/ca.key"   (这里是第一步生成证书的位置)
</VirtualHost>

最后启动服务器测试下完成。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值