导语:xampp中开启https很简单,因为它已经是开启状态了,你只要配置上传自己的ssl证书,然后修改一下vhost的配置就可以了。
准备工作
当然,你需要购买证书,一般个人站点购买支持通配符域名的证书就可以了,便宜的据说是50元一年,当然,叶子是听说的,叶子的站点还没有转移到ssl上面。
有朋友在这个my.getssl.cn网站购买,他买了三年,因为叶子自己没有买过,所以不支持也不反对也不推荐,只是朋友说了这个网站,叶子自己马克一下,免得忘记。
上传证书
将证书上传到下面的两个目录,一个是crt的目录,一个是key的目录。
存放后缀为crt的证书。
/opt/lampp/etc/ssl.crt
存放后缀为key的证书。
/opt/lampp/etc/ssl.key
当然,你要放在其他目录也可以的,放在这两个目录是为了方便管理。
修改httpd-ssl.conf
下载httpd-ssl.conf到本地修改,或者直接在服务器上修改。
httpd-ssl.conf的存放目录为:
/opt/lampp/etc/extra/httpd-ssl.conf
这个文件里面其实已经说明如何配置https,叶子还是贴出自己写的:
<VirtualHost *:443>
ServerAdmin admin@test.com
DocumentRoot "/opt/lampp/htdocs/test/web"
ServerName www.test.com
ServerAlias www.test.com test.com
SSLEngine on
SSLCertificateFile "/opt/lampp/etc/ssl.crt/www.test.crt"
SSLCertificateKeyFile "/opt/lampp/etc/ssl.key/www.test.key"
<Directory "/opt/lampp/htdocs/test/web/">
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# ErrorLog "logs/www.test.com-error_log"
# CustomLog "|/opt/lampp/bin/rotatelogs /opt/lampp/logs/www.test.com-access_log_%Y-%m-%d 86400 480" common
</VirtualHost>
注意最后屏蔽的是分割日志的配置,如果需要可以开启。
另外,肯定是要监听443端口的,https用的是443端口,那么如果有防火墙,请打开它。
将http跳转到https上
此跳转需要在httpd-vhosts.conf里面配置。
<VirtualHost *:80>
ServerAdmin admin@test.com
ServerName www.test.com
RewriteEngine On
RewriteRule ^/(.*)$ https://www.test.com/$1 [R=301,L]
</VirtualHost>
将顶级域名跳转到www的https二级域名上
假如顶级域名test.com需要跳转到https的www.test.com上,应该怎么做。
http跳转
<VirtualHost *:80>
ServerAdmin admin@test.com
ServerName test.com
RewriteEngine On
RewriteRule ^/(.*)$ https://www.test.com/$1 [R=301,L]
</VirtualHost>
注意此跳转在httpd-vhosts.conf里面配置,放在www二级域名之前。
https跳转
<VirtualHost *:443>
ServerAdmin admin@test.com
ServerName test.com
SSLEngine on
SSLCertificateFile "/opt/lampp/etc/ssl.crt/www.test.com.crt"
SSLCertificateKeyFile "/opt/lampp/etc/ssl.key/www.test.com.key"
RewriteEngine On
RewriteRule ^/(.*)$ https://www.test.com/$1 [R=301,L]
</VirtualHost>
注意此跳转在httpd-ssl.conf里面配置,放在www二级域名之前。
结束
你学会了吗?




