[普通]apache下开启ssl访问,即https

作者(passion) 阅读(1033次) 评论(0) 分类( web前端)

openssl Windows下已编译好的命令行程序:

http://downloads.sourceforge.NET/gnuwin32/openssl-0.9.8h-1-bin.zip


lamp开启ssl

首先需要安装openssl和apache的ssl模块,执行:

yum install openssl mod_ssl -y

即可,接下来的配置方法和以下内容类似


wamp开启SSL


1.#修改httpd.conf文件
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
#去掉上面两行前的"#"
2.#修改conf/extra/httpd-ssl.conf
SSLCertificateFile "D:/wamp/Apache2/bin/server.crt"
SSLCertificateKeyFile "D:/wamp/Apache2/bin/server.key"
3.#修改为你生成证书的文件位置
DocumentRoot "E:/www"  #修改 DocumentRoot的值与httpd.conf文件的DocumentRoot保持一致.
4.#解决APACHE无法启动

设置配置文件(httpd-ssl.conf conf/extra目录中)

SSLMutex  "file:D:/ProgramFiles2003/wamp/wamp/Apache2/logs/ssl_mutex"

修改为68: SSLMutex  default    
5.#把httpd-ssl.conf文件中所有的apache的路径替换为你的APACHE的路径

#到此配置文件修改完毕

二,证书生成的方法

windows的——

#命令行中进入apache/bin目录下执行如下:

openssl req -config ../conf/openssl.cnf -new -out server.csr -keyout server.pem

其中openssl.cnf为apache自带的openssl配置文件,引用到该文件的完整路径

输入两次密码,随便什么密码,然后一直回车,跳过下面的输入

#签发证书

openssl rsa -in server.pem -out server.key

输入刚才制定的密码

#生成密钥文件
openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 365
#生成证书文件

把  server.key,server.crt copy到conf文件夹下


Linux的——

生成服务器私钥:
#openssl genrsa -des3 -out server.key 1024

生成服务器证书请求,并按要求填些相关证书信息:
#openssl req -new -key server.key -out server.csr

签证:
# openssl x509 -req -days 700 -in server.csr -signkey server.key -out server.cert
Signature ok


重新启动APACHE

OK,恭喜你可以正常使用HTTPS来访问你的根目录了。


当然我们还需要ssl的虚拟主机

那就要配置虚拟主机文件,在文件中专门写一个监听443端口的虚拟主机,例如:

<VirtualHost woosau:443>
        DocumentRoot /home/ownfire/www/woosau
        ServerName woosau
        SSLEngine on
        SSLCertificateFile /etc/httpd/conf/server.crt
        SSLCertificateKeyFile /etc/httpd/conf/server.key
</VirtualHost>

因为规定主机名是woosau,所以还要写一个虚拟主机名规则

NameVirtualHost woosau:443

好了,完毕,这样就可以访问https://woosau了










(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。  : AH00072: make_sock: could not bind to address [::]:443
AH00451: no listening sockets available, shutting down

AH00015: Unable to open logs


解决:

D:\Apache24\bin>httpd -k uninstall


执行后

找到D:\Apache24\conf\extra


下面的

httpd-ahssl.conf和httpd-ssl.conf,有443的地方改为442就可以了。


« 上一篇:wifi共享上网(至尊版wifi)
« 下一篇:ASP.NET附加数据库文件的方式,如何发布到IIS7而不导致SQLServer出错
在这里写下您精彩的评论
  • 微信

  • QQ

  • 支付宝

返回首页
返回首页 img
返回顶部~
返回顶部 img