阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Apache 配置多个HTTPS站点

154次阅读
没有评论

共计 2897 个字符,预计需要花费 8 分钟才能阅读完成。

作中经常会遇到多个站点实现 https 访问,并指向同一个网页,本文将详解如何在 CentOS 环境下配置 Apache 多站点实现 HTTPS 访问。

准备工作
OS:CentOS release 6.8 (Final)
Web:Apache

安装 Apache

1、安装 Apache

[root@node1 ~]# yum install httpd -y

2、启动服务

[root@node1 ~]# service  httpd start
Starting httpd:                                            [OK]
[root@node1 ~]# 

3、修改测试页面

[root@node1 ~]# cat /var/www/html/index.html
<h1>
Apache Test Page~
</h1>

4、测试访问

Apache 配置多个 HTTPS 站点

实现 HTTPS 访问

1、安装 SSL 模块

[root@node1 ~]# yum install mod_ssl -y

2、检测

[root@node1 ~]# cd /etc/httpd/modules/
[root@node1 modules]# ll | grep ssl
-rwxr-xr-x 1 root root 181872 Oct 20  2017 mod_ssl.so

3、上传证书文件
这里我们可以到各大厂商去申请免费证书,可满足个人网站的需求,如企业网站,建议购买企业收费证书;

[root@node1 ~]# cd /etc/httpd/
[root@node1 httpd]# mkdir ssl/default
[root@node1 httpd]# cd ssl/default
[root@node1 default]# rz
[root@node1 default]# ll
total 12
-rw-r–r– 1 root root 1683 Apr 13 22:26 1_root_bundle.crt
-rw-r–r– 1 root root 2008 Apr 13 22:26 2_domaintest.cn.crt
-rw-r–r– 1 root root 1678 Apr 13 22:26 3_domaintest.cn.key
[root@node1 default]# 

4、修改配置

[root@node1 ~]# cd /etc/httpd/conf.d/
[root@node1 conf.d]# ls
README  ssl.conf  welcome.conf
[root@node1 conf.d]# vim ssl.conf 

 

LoadModule ssl_module modules/mod_ssl.so
Listen 443
<VirtualHost *:443>
    DocumentRoot “/var/www/html”
    ServerName domaintest.cn
    SSLEngine on
    SSLCertificateFile /etc/httpd/ssl/default/2_domaintest.cn.crt
    SSLCertificateKeyFile /etc/httpd/ssl/default/3_domaintest.cn.key
    SSLCertificateChainFile /etc/httpd/ssl/default/1_root_bundle.crt
</VirtualHost>

配置文件参数说明
LoadModule加载 SSL 模块
Listen监听 443 端口
DocumentRoot网页目录
ServerName站点域名
SSLEngine on启用 SSL 功能
SSLCertificateFile证书文件
SSLCertificateKeyFile私钥文件
SSLCertificateChainFile证书链文件

5、重启服务

[root@node1 ~]# httpd -t
Syntax OK
 
可以先试用 httpd -t 检测一下配置文件是否正确,然后再重启服务;
 
[root@node1 ~]# service  httpd restart
Stopping httpd:                                            [OK]
Starting httpd:                                            [OK]

6、检测端口是否监听

[root@node1 conf.d]# ss -ntl
State      Recv-Q Send-Q      Local Address:Port        Peer Address:Port
LISTEN    0      128                      *:80                      *:*   
LISTEN    0      128                      *:22                      *:*   
LISTEN    0      100              127.0.0.1:25                      *:*   
LISTEN    0      128                      *:443                    *:*   
[root@node1 conf.d]# 

配置多个 HTTPS 站点

1、上传证书文件

[root@node1 ~]# cd /etc/httpd/ssl/
[root@node1 ssl]# mkdir web
[root@node1 ssl]# cd web/
[root@node1 web]# rz

2、修改配置文件

LoadModule ssl_module modules/mod_ssl.so
Listen 443
NameVirtualHost *:443
# 第一个虚拟主机
<VirtualHost *:443>
DocumentRoot “/var/www/html”
ServerName domaintest.cn
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/default/2_domaintest.cn.crt
SSLCertificateKeyFile /etc/httpd/ssl/default/3_domaintest.cn.key
SSLCertificateChainFile /etc/httpd/ssl/default/1_root_bundle.crt
</VirtualHost>
# 第二个虚拟主机
<VirtualHost *:443>
DocumentRoot “/var/www/html”
ServerName web.domaintest.cn
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/web/2_web.domaintest.cn.crt
SSLCertificateKeyFile /etc/httpd/ssl/web/3_web.domaintest.cn.key
SSLCertificateChainFile /etc/httpd/ssl/web/1_root_bundle.crt
</VirtualHost>

3、重启服务

[root@node1 conf.d]# service  httpd restart
Stopping httpd:                                            [OK]
Starting httpd:                                            [OK]
[root@node1 conf.d]# 

4、测试

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2897字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中