Apache 使用SSL模块配置HTTPS(2)

<VirtualHost *:80>
    ServerAdmin email@example.com
    DocumentRoot /var/www/html/virtual-web
    ServerName proxy.mimvp.com
</VirtualHost>

我们可以参考上面的配置创建HTTPS虚拟主机。

# vim /etc/httpd/conf/httpd.conf

NameVirtualHost *:443

<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/pki/tls/certs/server.crt
    SSLCertificateKeyFile /etc/pki/tls/private/server.key
    <Directory /var/www/html/virtual-web>
        AllowOverride All
    </Directory>
    ServerAdmin email@example.com
DocumentRoot /var/www/html/virtual-web
ServerName proxy.mimvp.com
</VirtualHost>

需要按照上面的配置,定义每个虚拟主机。添加虚拟主机后,重新启动Web服务。

# service httpd restart

现在的虚拟主机就可以使用HTTPS

实例见米扑代理: https://proxy.mimvp.com

5. 强制Apache Web服务器始终使用https

如果由于某种原因,你需要站点的Web服务器都只使用HTTPS,此时就需要将所有HTTP请求(端口80)重定向到HTTPS(端口443)。 Apache Web服务器可以容易地做到这一点。

1,强制主站所有Web使用全局站点

如果要强制主站使用HTTPS,我们可以这样修改httpd配置文件:

# vim /etc/httpd/conf/httpd.conf

ServerName :80
Redirect permanent / https://www.example.com

重启Apache服务器,使配置生效:

# service httpd restart

2,强制虚拟主机单个站点

如果要强制单个站点在虚拟主机上使用HTTPS,对于HTTP可以按照下面进行配置:

# vim /etc/httpd/conf/httpd.conf

<VirtualHost *:80>
    ServerName proxy.mimvp.com
   
Redirect permanent / https://proxy.mimvp.com/
</VirtualHost>

重启Apache服务器,使配置生效:

# service httpd restart

单个站点全部使用HTTPS,则  会强制重定向跳转到 https://proxy.mimvp.com

一般情况下,由于浏览器会自动拦截https未被认证的网址,因此建议同时保留  和 https://proxy.mimvp.com ,或者购买权威的认证服务,让用户浏览器信任https浏览访问。

米扑博客实例:

https://proxy.mimvp.com

综上所述,当存在如用户登录,付款交易等交互时推荐HTTPS方式,可以提高服务器的安全性。

证书可以通过各种方式获得,如:自签名、社区提供的甚至商业机构够哦买的。管理员应当谨慎选择将要使用的证书的类型。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/7c4e8efac6bb804cfcc97dfc39b8ff74.html