前言
环境:Ubuntu系统apt-get在线安装Apache
申请的SSL证书相关文件已上传至服务器
Apache默认路径:
默认网页目录:/var/www/html
默认配置文件目录:/etc/apache2/
服务启动位置:/etc/init.d/apache2 start/restart/stop
配置SSL
进入到/etc/apache2
下,可以看到sites-available和sites-enabled两个目录,这是我们之后要用到的目录,在sites-enabled中,有一个000-default.conf文件,并且可以看到是一个sites-available下的软链接文件,这是安装apache时默认启用的设置,用来让我们使用http服务,
接下来我们要用到的是sites-available下的另一个文件default-ssl.conf。
一、首先在sites-enabled中创建一个软链接:
sudo ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/000-default-ssl.conf
二、接着修改000-default-ssl.conf
文件内容,总共需要修改两处:
第一处:
DocumentRoot /var/www/html
改成
DocumentRoot /var/www/你的目录
ServerName 你的域名
第二处:
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
改成
SSLEngine on
SSLCertificateFile 证书路径/2_xxx.crt #证书公钥
SSLCertificateKeyFile 证书路径/3_xxx.key #证书私钥
SSLCertificateChainFile 证书路径/1_root_bundle.crt #证书链
三、重启Apache服务
首先加载SSL模块
sudo a2enmod ssl
重启服务
sudo service apache2 restart 或 sudo systemctl restart apache2
到这一步不出意外我们就可以使用https://来访问我们的网站了,但是发现直接输入域名时浏览器默认会使用http://来访问我们的网站,这时候我们就可以继续做重定向的配置,让浏览器强制使用https://来访问我们的网站。
重定向强制https://访问
首先打开/etc/apache2/sites-available/000-default.conf这个文件
sudo vim /etc/apache2/sites-available/000-default.conf
在里面随意一个地方加上以下代码(<VirtualHost*:80>标签内):
RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]
保存退出
打开Apache的重定向功能,并重启服务
sudo a2enmod rewrite
sudo service apache2 restart 或 sudo systemctl restart apache2
之后打开浏览器,输入我们的域名,自动加载https://,成功!!
大功告成[撒花][撒花][撒花]。