问题简而言之就是需要将后端的http请求变成https请求,这里有两种路子去处理:
1) 本身后端反馈给前端的是http的servlet,是否可以将servlet生成https的请求;
2) 能否通过其他代理手段,将后端http请求转换一下。
因时间紧,优先考虑代理方案。常用的代理服务手段nginx等,优先选择nginx,轻量与简单。
目标如下:
【客户端 --(https)-->nginx--(http)-->servlet容器】
选择nginx-1.20.0版本
代理https需要配置SSL,以如下命令生成SSL配置,加入到nginx配置中
1)生成密钥,使用openssl生成密钥private.key,长度为1024
openssl genrsa -out private.key 1024
2)使用密钥生成证书server.pem
openssl req -new -x509 -key private.key -out server.pem -days 365
证书信息可以随便填或者留空,只有Common Name要根据你的域名填写,即填写nginx所在服务器的IP或域名。
启动nginx即可
网址直接提供给Gworg实现HTTPS协议。
解释原因:
确定好需要HTTPS协议网站地址。
让Gworg提供信任数字证书。
配置到服务器或者让Gworg进行接入就可以实现HTTPS。
解决办法:将网址直接给Gworg升级HTTPS协议。
注意:只有网站负责人或者域名管理者才可以申请。
1、建立httpd服务,要求:(1) 提供两个基于名称的虚拟主机:
www1.stuX.com ,页面文件目录为/web/vhosts/www1;错误日志为/var/log/httpd/www1/error_log,访问日志为/var/log/httpd/www1/access_log;
www2.stuX.com ,页面文件目录为/web/vhosts/www2;错误日志为/var/log/httpd/www2/error_log,访问日志为/var/log/httpd/www2/access_log;
(2) 通过 www1.stuX.com/server-status 输出其状态信息,且要求只允许提供账号的用户访问;
(3) www1不允许192.168.0.88主机访问;
2、为上面的第2个虚拟主机提供https服务,使得用户可以通过https安全的访问此web站点;
(1) 要求使用证书认证,证书中要求使用国家(CN),州(Beijing),城市(Beijing),组织为(MageEdu);
(2) 设置部门为Ops, 主机名为 www2.stuX.com ;
3、为https访问配置强制跳转,访问 http://www2.stuX.com 会跳转到 https://www2.stuX.com 上面去。
在进行配置前,首先安装httpd服务及mod_ssl:
首先创建页面文件目录及日志文件目录:
随后编辑配置配置文件:
之后配置用户认证文件:
使用httpd -t检查配置,如无报错后启动服务:
测试认证访问:
我这边用windows测试,本地Ip为192.168.0.38,修改保存C:\Windows\System32\drivers\etc\hosts文件:
然后测试访问:
查看相应的日志文件:
相关日志log均能正常记录访问。
首先创建CA服务器,用于签发证书:
随后生成签发服务器证书:
之后编辑/etc/httpd/conf.d/ssl.conf文件:
编辑/etc/httpd/conf.d/vhost.conf文件:
重启httpd服务,后测试访问:
此时访问 http://www2.stuX.com 页面,不会跳转到https页面访问:
首先确认配置文件是否加载了mod_rewrite,httpd-2.4 module配置文件在/etc/httpd/conf.modules.d/00-base.conf中:
随后编辑www2的虚拟主机配置:
保存后重启httpd服务,访问相应的页面测试:
此时访问 www2.stuX.com 的其他路径不会跳转到https访问页面,如index.html。
Rewrite的模块使用比较复杂,此处我也是刚接触有兴趣的同学可以参考下面的链接进行学习:
配置https服务: https://blog.csdn.net/wlzx120/article/details/52597338
配置https强制跳转: https://www.centos.bz/2018/01/apache-%E5%BC%BA%E5%88%B6-http-%E5%85%A8%E9%83%A8%E8%B7%B3%E8%BD%AC%E5%88%B0-https/
Rewrite模块: http://httpd.apache.org/docs/2.4/mod/mod_rewrite.html
Rewrite模块中文手册: http://man.chinaunix.net/newsoft/Apache2.2_chinese_manual/mod/mod_rewrite.html#rewriterule
RewriteRule和RewriteCond规则参数的详细介绍: https://blog.csdn.net/lijunwyf/article/details/54948463
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)