为apache2 开启https

要在Apache2上启用HTTPS,您需要完成以下步骤:

  • 安装所需的软件包:
  • 在Ubuntu上,使用以下命令安装Apache2:sudo apt install apache2
  • 在CentOS上,使用以下命令安装Apache2:sudo yum install httpd
  • 生成SSL证书和密钥:
  • 您可以使用自签名证书进行测试,或者从证书颁发机构获取有效的SSL证书。
  • 使用以下命令生成自签名证书和密钥:
    sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt
  • 配置Apache2以使用SSL:
  • 在Ubuntu上,使用以下命令启用SSL模块:sudo a2enmod ssl
  • 在CentOS上,SSL模块已经默认启用。
  • 创建SSL虚拟主机配置文件:
  • 在Ubuntu上,使用以下命令创建新的配置文件:sudo nano /etc/apache2/sites-available/default-ssl.conf
  • 在CentOS上,使用以下命令创建新的配置文件:sudo nano /etc/httpd/conf.d/ssl.conf
  • 将以下内容添加到配置文件中: <VirtualHost _default_:443> ServerAdmin your_email@example.com DocumentRoot /var/www/html ServerName your_domain.com SSLEngine on SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key &lt;FilesMatch "\.(cgi|shtml|phtml|php)$"&gt; SSLOptions +StdEnvVars &lt;/FilesMatch&gt; &lt;Directory /usr/lib/cgi-bin&gt; SSLOptions +StdEnvVars &lt;/Directory&gt; ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
  • 启用SSL虚拟主机配置:
  • 在Ubuntu上,使用以下命令启用配置文件:sudo a2ensite default-ssl.conf
  • 在CentOS上,无需启用配置文件。
  • 重新加载Apache2配置:
  • 在Ubuntu上,使用以下命令重新加载配置:sudo systemctl reload apache2
  • 在CentOS上,使用以下命令重新加载配置:sudo systemctl reload httpd
  • 防火墙设置:
  • 在Ubuntu上,使用以下命令允许HTTPS流量:sudo ufw allow 'Apache Full'
  • 在CentOS上,使用以下命令允许HTTPS流量:sudo firewall-cmd --permanent --add-service=https
  • 重新加载防火墙规则:
    • 在Ubuntu上,使用以下命令重新加载防火墙:sudo ufw reload
    • 在CentOS上,使用以下命令重新加载防火墙:sudo firewall-cmd --reload

现在,您的Apache2服务器已经配置为使用HTTPS。您可以通过访问https://your_domain.com来测试它。


Learn more:

  1. Ubuntu下安装和配置apache2并启用https_ubuntu apache2 配置443反向代理-CSDN博客
  2. Apache配置HTTPS功能 – 温柔易淡 – 博客园
  3. 下载并在Ubuntu Apache2配置SSL证书实现网站HTTPS加密_数字证书管理服务(原SSL证书)(SSL Certificate)-阿里云帮助中心

发表评论