【SSL】【Apache】 配置 https/ssl
前言
- Apache 2.4.39
- phpStudy 8.1.1.2
- tomcat 8.0 的项目
- windows server 2003
准备
- 在
httpd.conf
配置文件中加载 Http 反向代理用到的模块
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
- 在
conf/vhosts
目录下添加名为weixin.xxx.com.conf
配置文件(文件内容为空,后面再进行修改)。
在httpd.conf
配置文件中,有下面这段配置。该配置表示conf/vhosts
目录下.conf
后缀的配置文件会被加载。
# Virtual hosts
Include conf/vhosts/*.conf
Apache 配置 Https 的好处
在 Tomcat 中启用 Https也可以的(参考这里)。
服务器嘛,肯定是多个应用共用一台。多个应用共用一台服务器时,就会涉及到端口冲突。比如,你也想用443端口,我也想用443端口,怎么办呢?就需要 Apache 配置反向代理。
Apache 配置 Https 反向代理
(Apache 配置 Https 反向代理 和 Apache 配置 Http 反向代理是一样的)
- 启用 443 端口。在
conf/vhosts
目录下找到Listen.conf
配置文件,在该配置文件添加443端口的监听(如下)。
Listen 80
Listen 443 https
- 在
weixin.xxx.com.conf
配置文件中添加虚拟主机(VirtualHost
)配置。(为啥是weixin.xxx.com.conf
文件,参考准备步骤中的说明)
<VirtualHost *:443># server nameServerName weixin.xxx.com:443# SSLSSLEngine onSSLCertificateFile "${SRVROOT}/conf/ssl/weixin.xxx.com.crt"SSLCertificateKeyFile "${SRVROOT}/conf/ssl/weixin.xxx.com.key"SSLCertificateChainFile "${SRVROOT}/conf/ssl/weixin.xxx.com_chain.crt"# document rootDocumentRoot "C:/phpstudy_pro/WWW/test"<Directory "C:/phpstudy_pro/WWW/test">Options FollowSymLinks ExecCGIAllowOverride AllOrder allow,denyAllow from allRequire all grantedDirectoryIndex index.html</Directory># logCustomLog "${SRVROOT}/logs/weixin.xxx.com_ssl.log" \"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"ProxyRequests offProxyPass /office ajp://localhost:9013/officeProxyPassReverse /office ajp://localhost:9013/officeProxyPass /officeapi http://localhost:9020/officeapiProxyPassReverse /officeapi http://localhost:9020/officeapi# errorErrorDocument 400 /error/400.htmlErrorDocument 403 /error/403.htmlErrorDocument 404 /error/404.htmlErrorDocument 500 /error/500.htmlErrorDocument 501 /error/501.htmlErrorDocument 502 /error/502.htmlErrorDocument 503 /error/503.htmlErrorDocument 504 /error/504.htmlErrorDocument 505 /error/505.htmlErrorDocument 506 /error/506.htmlErrorDocument 507 /error/507.htmlErrorDocument 510 /error/510.html
</virtualhost>
注:
${SRVROOT}
为apache的按照目录。比如:C:\phpstudy_pro\Extensions\Apache2.4.39
。- apache 反向代理 tomcat 时,使用 ajp 协议由于 http 协议(参考 AJP 与HTTP 比较和分析)。
- 当通过浏览器访问
https://weixin.xxx.com/office
时,Apache 将调用http://localhost:9010/office
得到的结果返回给浏览器 - 当通过浏览器访问
https://weixin.xxx.com/officeapi
时,Apache 将调用http://localhost:9020/officeapi
得到的结果返回给浏览器 - 当通过浏览器访问
https://weixin.xxx.com/images/default/head.jpg
时,Apache 将调用C:/phpstudy_pro/WWW/test/images/default/head.jpg
返回给浏览器。如果C:/phpstudy_pro/WWW/test/images/default/head.jpg
文件不存在,将会触发404错误,将C:/phpstudy_pro/WWW/test/error/404.html
返回给浏览器。
- 重启apache。
- 测试一下。
- 检查证书按照是否完整
访问这个网址进行检查:https://www.myssl.cn/tools/check-server-cert.html
检查结果:
Apache 配置 Http 自动跳转 Https
- 在
weixin.xxx.com.conf
配置文件中添加虚拟主机(VirtualHost
)。(为啥是weixin.xxx.com.conf
文件,参考准备步骤中的说明)
<VirtualHost *:80># server nameServerName weixin.xxx.com# document rootDocumentRoot "C:/phpstudy_pro/WWW/test"<Directory "C:/phpstudy_pro/WWW/test">Options FollowSymLinks ExecCGIAllowOverride AllOrder allow,denyAllow from allRequire all grantedDirectoryIndex index.html</Directory># log # use default# errorErrorDocument 400 /error/400.htmlErrorDocument 403 /error/403.htmlErrorDocument 404 /error/404.htmlErrorDocument 500 /error/500.htmlErrorDocument 501 /error/501.htmlErrorDocument 502 /error/502.htmlErrorDocument 503 /error/503.htmlErrorDocument 504 /error/504.htmlErrorDocument 505 /error/505.htmlErrorDocument 506 /error/506.htmlErrorDocument 507 /error/507.htmlErrorDocument 510 /error/510.html# http redirect to httpsRewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
</VirtualHost>
参考
- 【SSL】openssl 提取 PKCS 证书库中的公钥、私钥、证书、密钥
- apache ProxyPass指令详解
- 设置Apache下HTTPS 自动跳转为 HTTP
- Apache Rewrite规则详解
- Apache配置HTTPS功能
- Apache配置正向代理与反向代理
- AJP与HTTP比较和分析
- Tomcat的HTTP和AJP连接器
- https://blog.csdn.net/tjmljw/article/details/84369413
【SSL】【Apache】 配置 https/ssl相关推荐
- 【SSL】【Apache】 使用向导配置 https/ssl
前言 Apache 2.4.39 phpStudy 8.1.1.2 tomcat 8.0 的项目 准备 在 httpd.conf 配置文件中加载 Http 反向代理用到的模块 LoadModule p ...
- 最新阿里云服务器免费SSL证书配置HTTPS的两种方法(图文教程二)
在大家学习如何利用免费SSL证书配置网站HTTPS之前,我们先要搞清楚为什么要开启HTTPS,这个绿色的小锁真的有用吗?所谓的HTTPS其实是(安全套接字层超文本传输协议)是以安全为目标的HTTP通道 ...
- Apache配置HTTPS功能
apache配置https 一.yum 安装openssl和openssl-devel,httpd-devel 二.生成证书(也可以从公司的证书颁发机构获取): #建立服务器密钥 openssl ge ...
- Apache 配置HTTPS协议搭载SSL配置
在设置Apache + SSL之前, 需要做: 安装Apache, 请参见: Windows环境下Apache的安装与虚拟目录的配置, 下载安装Apache时请下载带有ssl版本的Apache安装程序 ...
- Apache httpd 配置HTTPS SSL访问 443
2, 首先安装https模块yum install mod_ssl 3. 配置Apache Web服务器 首先,修改下面的配置文件.仅需配置红色部分 SSLCertificateFile 和 SSLC ...
- SSL证书配置(https访问接口, 单向认证和双向认证)
拿到SSL证书后, 如何才能解锁更多玩法? 一. SpringBoots项目配置https访问接口(直接配置) SSL协议 配置步骤 1. 获取证书/ 生成证书 2. 放置证书 3. 配置项目 pro ...
- windows 生成免费ssl证书 配置 https
window10 + phpstudy 配置 https 首先简单的理解下https与http 1.从URL HTTP 是 HTTP:// 开头,而 HTTPS 是 HTTPs:// 开头: 2.HT ...
- SharePoint 2013 配置HTTPS(SSL)
//来源:http://www.cnblogs.com/jianyus/p/4234780.html 1.打开服务器上的IIS,找到服务器证书,如下图: 2.进入服务器证书,点击右侧操作"创 ...
- 乌班图配置 https ssl证书
2. 配置证书 在这里,我假设你已经会配置基本的/etc/apache2/sites-available/000-default.conf这个文件来达到已经可以通过 http 的方式来访问你的站点. ...
最新文章
- 用ajax进行部门的验证,ajax用$.post方式进行用户名校验
- vb6 数据自动生成excel文件_Excel随机生成数据
- 推荐一款超级好用的开源画图工具:用例图、架构图、时序图、类图、E-R图、甘特图
- C++控制台读取和输出函数
- 【学术相关】热议:寒门硕士要不要继续读博士?
- Kruskal实现最小生成树
- 牛客 - 走迷宫(模拟+离线)
- 安防监控系统CIF、D1等格式的解释
- jQuery-DOM操作
- 春节传统元素素材,帮助设计师完成中国风海报设计
- 基于JAVA+Spring+MYSQL的家教管理系统
- 【谷粒学院】项目总结
- Mac 启动 linux 可执行文件。
- 利用pandas对MovieLens电影数据分析
- 计算机二进制乘法运算(原码,补码)
- JAVA制作游戏脚本(1)---Robot机器人
- Prefix-Tuning: Optimizing Continuous Prompts for Generation
- 【java实现控制台打印表格】
- ⅰcp经济模型_简单介绍一下R中的几种统计分布及常用模型
- 【Python】打断点