都说现在的HTTPS更好,更安全,也给自己的网站添加了HTTPS.以此记录此过程.
访问http://andaily.com试试.
-硬件环境
操作系统: Ubuntu 12.04.1 LTS
服务器: Apache Server 2.2.22
SSL证书: 沃通免费SSL证书G2 (申请地址https://buy.wosign.com/ApplyForSSL.html选择第一个免费SSL)或http://www.wosign.com/DVSSL/DV_KuaiSSL_Free.htm
-主要步骤
1.申请免费SSL后会去下载SSL证书,文件,Apache 的证书文件有3个: 1_root_bundle.crt; 2_xxx.crt; 3_xxx.key . (xxx为申请时的域名,下同)
将三个文件复制到服务器的任意位置(建议放在/etc/apache2/ssl/ 目录)
2.启用SSL模块, 使用命令
a2enmod ssl
3. 在/etc/apache2目录, 将sites-available/default-ssl复制到 sites-enabled目录, 并将其名称修改为001-ssl
编辑001-ssl文件, 在内容 SSLEngine on 下面添加如下内容
SSLCertificateFile /etc/apache2/ssl/2_xxx.crt
SSLCertificateKeyFile /etc/apache2/ssl/3_xxx.key
SSLCACertificateFile /etc/apache2/ssl/1_root_bundle.crt
保存并退出.
4.重新载入Apache配置并 重启Apache
/etc/init.d/apache2 force-reload
/etc/init.d/apache2 restart
OK, 现在你的网站就支持https访问了(也可用http访问)
若需要网站强制使用https(不再支持http,http访问时会强制重定向到https) 配置如下
在/etc/apache2目录, 编辑sites-available/default 文件,在 <VirtualHost *.80>里加入如下内容
# Force HTTPS
RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]
该配置将所有的http请求全重定向到 https.
注意: 最后不要忘记检查服务器的443端口一定要打开才能访问
OK, 实践完成, 希望对你有帮助.
若启用mod_jk, 使用Tomcat作为应用服务器, 则需要在启用的SSL中添加 JkMount, JkUnMount
cd /etc/apache2/sites-enabled
vi 001-ssl
在</VirtualHost>标签之前添加 JkMount, JkUnMount的配置,参考示例如下
JkUnMount /*.js ajp13_worker
JkUnMount /*.css ajp13_worker
JkUnMount /*.htm ajp13_worker
JkUnMount /*.html ajp13_worker
JkUnMount /*.png ajp13_worker
JkUnMount /*.gif ajp13_worker
JkUnMount /*.jpg ajp13_worker
JkUnMount /*.jpeg ajp13_worker
JkMount /* ajp13_worker
这样可以实现负载均衡, 将系统的动静资源进行分离.
-------------------------
参考文章:
http://blog.csdn.net/jibcy/article/details/7876121
http://blog.sina.com.cn/s/blog_6ad6243801013em0.html