本文主要是介绍在ubuntu上为Apache2安装ssl证书,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. 拷贝或软连接/etc/apache2/sites-available/default-ssl.conf到/etc/apache2/sites-enabled/000-default-ssl.conf
在/etc/apache2/sites-available下的配置为可选的,在/etc/apache2/sites-enabled的配置为及时生效的
1.1 建立软连接的方式(任选其一)
ln -s /etc/apache2/sites-available/**default**-ssl.conf /etc/apache2/sites-enabled/000-**default**-ssl.conf
1.2 拷贝方式(任选其一)
cp /etc/apache2/sites-available/**default**-ssl.conf /etc/apache2/sites-enabled/000-**default**-ssl.conf
2.修改000-default-ssl.conf文件的内容
vim etc/apache2/sites-enabled/000-**default**-ssl.conf
<IfModule mod_ssl.c> <VirtualHost *:443> ServerAdmin #邮箱 ServerName #域名www.domain.com DocumentRoot /data/www/html #你的网站目录 ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on SSLProtocol all -SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!**NULL**:!DH:!EDH:!EXP:+MEDIUM # 修改加密套件。 SSLHonorCipherOrder on SSLCertificateFile /etc/apache2/cert/domain name1_public.crt # 将domain name1_public.crt替换成您证书文件名。 SSLCertificateKeyFile /etc/apache2/cert/domain name1.key # 将domain name1.key替换成您证书的密钥文件名。 SSLCertificateChainFile /etc/apache2/cert/domain name1_chain.crt # 将domain name1_chain.crt替换成您证书的密钥文件名;证书链开头如果有#字符,请删除。 <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory></VirtualHost>
</IfModule>
3.强制使用https
vim /etc/apache2/sites-available/000-**default**.conf
在
*VirtualHost\*:80*>
标签任意位置添加
RewriteEngine onRewriteCond %{HTTPS} !=onRewriteRule ^(.*) https:*//%{SERVER_NAME}$1 [L,R]*
4.加载ssl模块
sudo a2enmod ssl #加载模块
sudo systemctl restart apache2.service # 重启服务
这篇关于在ubuntu上为Apache2安装ssl证书的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!