sudo apt-get install openssl
输入
sudo a2enmod ssl
无效则输入下面两个命令
sudo ln -s /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled/ssl.load
sudo ln -s /etc/apache2/mods-available/ssl.conf /etc/apache2/mods-enabled/ssl.conf
下载证书并解压后得到四种环境的文件夹,然后把Apache文件夹下面的文件放到服务器 /etc/apache2/ssl/ 里
命令:
$ mkdir /etc/apache2/ssl
$ cp ~/.../server.key /etc/apache2/ssl/.
$ cp ~/.../ca.crt /etc/apache2/ssl/.
https://console.qcloud.com/ssl/apply
1.进入/etc/apache2/ports.conf
查看是否有
Listen 80
Listen 443
没有就添加上去
2.配置ssl虚拟站点
上文安装完后,会在/etc/apache2/sites-available/目录下生成一个缺省的default-ssl文件。缺省的网页目录仍然是/var/www/。我们可以创建一个链接到site-enabled目录。
sudo ln -s /etc/apache2/sites-available/default-ssl /etc/apache2/sites-enabled/001-ssl
启用SSL站点
$ a2ensite default-ssl
编辑default-ssl文件,加入证书对应的主机头。
$ sudo vim /etc/apache2/sites-enabled/default-ssl.conf
找到
SSLCertificateFile,
SSLCertificateKeyFile,SSLCertificateChainFile
配置为
SSLCertificateFile 证书地址/2_xxx.crt
SSLCertificateKeyFile 证书地址/3_xxx.key
SSLCertificateChainFile 证书地址/1_root_bundle.crt
sudo service apache2 restart
应该已经可以访问https了
启动 rewrite mod
sudo a2enmod rewrite
或者
sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load
打开 /etc/apache2/sites-available/000-default.conf ,
在 <\VirtualHost *:80><\VirtualHost> 标签内随便一个地方加入以下三行
RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]
或者在网站目录处新建.htaccess 输入
RewriteEngine on
RewriteBase /
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.* https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
sudo service apache2 restart