首页 > 代码库 > Windows下Apache配置SSL以支持https及出错的解决办法

Windows下Apache配置SSL以支持https及出错的解决办法

步骤一:安装apache,使其支持SSL,并安装php

1.安装配有SSL模块的apache,apache_2.2.8-win32-x86-openssl-0.9.8g

2.配置apache以支持SSL:

1)打开apache的配置文件conf/httpd.conf

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf

去掉两行前面的#

2)注意修改httpd-ssl.conf 文件里的两个字段:

SSLCertificateFile "C:/Apache2.2/conf/server.crt"
SSLCertificateKeyFile "C:/Apache2.2/conf/server.key"

3.安装php,整合apache和php(略)

步骤二:为网站服务器生成证书及私钥文件

1. 生成服务器的私钥

进入命令行:

 D:\local\apache2\bin\openssl genrsa -out server.key 1024

在当前目录下生成了一个server.key生成签署申请

2. 生成签署申请

 D:\local\apache2\bin>openssl req -new –out server.csr -key server.key -config ..\conf\openssl.cnf

此时生成签署文件server.csr。

可能会报错:无法定位序数xxx于动态链接库libeay32.dll,解决办法:将apache的bin目录下的libeay32.dll文件复制到c:\windows\system32下。

步骤三:通过CA为网站服务器签署证书

1.生成CA私钥

 D:\local\apache2\bin\openssl genrsa  -out ca.key 1024

多出ca.key文件

2.利用CA的私钥产生CA的自签署证书

 D:\local\apache2\bin\openssl req  -new -x509 -days 365 -key ca.key -out ca.crt  -config ..\conf\openssl.cnf

此时需要输入一些信息,注意Common Name为服务器域名,如果在本机,为本机IP。

3.CA为网站服务器签署证书

 D:\local\apache2\bin\openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config ..\conf\openssl.cnf

但此时会报错,于是在当前目录创建demoCA,里面创建以下文件,index.txt,serial:serial内容为01,其他为空,以及文件夹newcert.再执行一遍,即可生成server.crt文件

步骤四:将  server.crt,server.key复制到apache的conf文件夹下,重启apache

步骤五:配置windows

打开C:\WINDOWS\system32\drivers\etc下的etc文件:
修改为:

127.0.0.1 localhost
127.0.0.1 www.10000ja.net

步骤六:

在apache下创建站点。 访问

https://www.10000ja.net




本文出自 “伽罗博客” 博客,谢绝转载!