Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >apache安装ssl证书_apache ssl证书配置

apache安装ssl证书_apache ssl证书配置

作者头像
全栈程序员站长
发布于 2022-09-27 08:32:34
发布于 2022-09-27 08:32:34
10K10
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

制作证书:

参考:linux下运用opensll制作ssl证书linux下运用opensll制作ssl证书linux下运用opensll制作ssl证书linux下运用opensll制作ssl证书linux下运用opensll制作ssl证书linux下运用opensll制作ssl证书linux下运用opensll制作ssl证书

生成三个证书 server.crt 、server-ca.crt、server.key

安装openssl

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
tar -xzvf openssl-1.0.2h.tar.gz
cd openssl-1.0.2h
./config -fPIC  enable-shared
make depend
make  && make install
make clean && make distclean

#openssl类库做软连接
ln -s /usr/local/ssl//lib/*.so.* /usr/lib64
ln -s /usr/local/ssl//lib/*.so.* /usr/lib

安装apache

apache依赖包安装不详细说明,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
tar xvzf httpd-2.4.18.tar.gz 
cd httpd-2.4.18
./configure \
    --prefix=/usr/local/cp-httpd-2.4.18 \
	--with-apr=/usr/local/cp-apr-1.5.2 \
	--with-apr-util=/usr/local/cp-apr-util-1.5.4 \
	--with-apr-iconv=/usr/local/cp-apr-iconv-1.2.1 \
	--with-ssl=/usr/local/ssl \
	--enable-so \
	--enable-ssl \
	--enable-mods-shared=all \
	--enable-cache \
	--enable-disk-cache \
    --enable-file-cache \
    --enable-mem-cache 	
make && make install
make clean && make distclean

配置apache的ssl

httpd.conf中配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#启用ssl模块
sed -i 's:#LoadModule ssl_module modules/mod_ssl.so:LoadModule ssl_module modules/mod_ssl.so:' /usr/local/httpd/conf/httpd.conf
sed -i 's:#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so:LoadModule socache_shmcb_module modules/mod_socache_shmcb.so:' /usr/local/httpd/conf/httpd.conf
sed -i 's:#Include conf/extra/httpd-ssl.conf:Include conf/extra/httpd-ssl.conf:' /usr/local/httpd/conf/httpd.conf

httpd-ssl.conf配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sed -i 's:#SSLCertificateChainFile "/usr/local/httpd/conf/server-ca.crt":SSLCertificateChainFile "/usr/local/httpd/conf/server-ca.crt":' /usr/local/httpd/conf/extra/httpd-ssl.conf

拷贝server.crt 、server-ca.crt、server.key到/usr/local/httpd/conf目录下

apache结合openssl安装过程中出现的错误

  • 1、apache错误提示libz.a: could not read symbols: Bad value”

重新安装openssl 加上-fPIC和enable-shared参数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
         ./config -fPIC --prefix=/usr/local/openssl1.0.1  enable-shared
  • 2、apache的httpd.conf缺乏LoadModule ssl_module modules/mod_ssl.so解决方法

原因是上一次编译的缓存存,需要清除掉才能重新生成执行

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
         make clean && make distclean

3、httpd: Syntax error on line 129 of /usr/local/cp-httpd-2.4.18/conf/httpd.conf: Cannot load modules/mod_ssl.so into server: libssl.so.1.0.0: cannot open shared object file: No such file or directory

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
         ln -s /usr/local/ssl/lib/*.so /usr/lib64
         ln -s /usr/local/ssl//lib/*.so.* /usr/lib

这个问题比较奇怪,命名在httpd安装中指定了–enable-ssl和–with-ssl=/usr/local/openssl/还是无法生效,httpd只在/usr/lib64查找libssl.so.1.0.0,因此需要做个软连接处理。

配置rewrite规则实现访问http自动跳转到https

实现方法是定义一个.htaccess放在httdocs中,内容为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On

  RewriteCond %{SERVER_PORT} !^443$
  RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
 
  ErrorDocument 404 /404.html
  ErrorDocument 403 /404.html
</IfModule>

特别说明:

apache重新编译不会覆盖原有的httpd.conf文件,因此如果原有没有编译ssl的话,httpd.conf中必须手工加上mod_ssl.so模块配置

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/193169.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
←在这个前提下,我们就可以输入代码。(我确定或完)叫.../rebels. 往前拉杆./ ;
←在这个前提下,我们就可以输入代码。(我确定或完)叫.../rebels. 往前拉杆./ ;
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
Linux部署apache并配置SSL证书
Centos可能自带了httpd,但是版本可能会较低,执行下面的命令检测是否已经安装了httpd
PHP开发工程师
2022/04/25
1.7K0
Linux下配置Apache实现HTTPS访问
Linux下编译安装Apache并且配置HTTPS访问。https是超文本传输安全协议,是一种网络安全传输协议。http协议传输的数据都没有加密,一些私密的信息不安全,https经由超文本传输协议(http)进行通信,利用SSL/TLS来加密数据包,https开发的主要目的就是为了保护数据传输的安全性。
星哥玩云
2022/07/14
3.7K0
Linux下配置Apache实现HTTPS访问
WAMP——配置HTTPS证书
Apache版本 | 2.4.18 因为安全的原因,代码里面设置了必须以https来访问,为了不来回修改代码,所以直接配一个环境得了~
思索
2024/08/16
4470
WAMP——配置HTTPS证书
Apache 配置
本文简要介绍了 Apache 配置 https 、子域名。 如果启动出现错误,搜索一下错误信息,一般启用某些模块就行了。 https 修改主配置文件 /usr/local/apache2/conf/httpd.conf LoadModule socache_shmcb_module modules/mod_socache_shmcb.so LoadModule ssl_module modules/mod_ssl.so 为了方便这里不启用 /usr/local/apache2/conf/extra/htt
康怀帅
2018/02/28
1.7K0
Centos6.8下编译安装LAMP的操作记录梳理
之前用的最多的web框架是LNMP,偶尔也会用到LAMP。接下来简单说下LAMP环境的部署记录,这里选择源码安装的方式: 1)Mysql的安装 部署过程参考:http://www.cnblogs.com/kevingrace/p/6109679.html 2)Apache的安装 依赖软件安装 [root@jenkins-server ~]# yum install gcc gcc-c++ make wget [root@jenkins-server ~]# yum install zlib-devel op
洗尽了浮华
2018/01/23
1.2K0
Centos6.8下编译安装LAMP的操作记录梳理
apache 转发 配置_url导入配置
补充1: 以下,通过httpd_vhost.conf配置了两个apache虚拟机,分别模拟http和https的转发: NameVirtualHost *:81 NameVirtualHost *:443
全栈程序员站长
2022/11/02
2.2K0
国密SSL协议之Apache集成
Apache httpd自身支持标准的SSL协议,但并不支持国密SSL协议。本文描述了Apache httpd配置的国密SSL协议(单向)的完整过程,仅供学习和参考之用。
gmssl
2020/08/20
1.7K1
国密SSL协议之Apache集成
php以模块方式、和fpm方式 搭建LAMP环境详解
mysql版本:mariadb-5.5.43-linux-x86_64.tar.gz
保持热爱奔赴山海
2019/09/18
1K0
php以模块方式、和fpm方式 搭建LAMP环境详解
apache开启openssl支持
一、 加载 Apache SSL 模块 如果已经安装过 apache2.2 ,现在需要额外添加 SSL 支持,那么你需要重新编译安装一次 apache2。 编辑 httpd.conf,分别查找下面2行代码,并去掉前面的# 1.vim /usr/local/apache/conf/httpd.conf 2.LoadModule ssl_module modules/mod_ssl.so 3.Include conf/extra/httpd-ssl.conf 二、编辑 Apache SSL 配置文件 这只是
wangxl
2018/03/07
3.3K0
apache开启openssl支持
CentOS 6.5环境下安装SVN 整合Apache+SSL
服务器系统:CentOS 6.5 64位,搭建过程中全部采用源码编译安装(configure/make/make install),推荐大家使用编译安装。
星哥玩云
2022/07/04
4170
apache服务器配置证书方法!
命令:openssl req -new -key server.key > server.csr
习惯说一说
2019/07/09
2.9K0
windows下apache利用SSL来配置https
将以上变量,添加文件,添加进之后注意,是否有其它一样的变量,如果有,就注释掉,注释(#)
Wyc
2018/12/27
2.2K0
Appserv(Apache) 配置ssl证书
一:打开httpd.conf文件,移除注释的行: Include conf/extra/httpd-ahssl.conf LoadModule ssl_module modules/mod_ssl.s
SpiritLing
2018/04/16
6.4K1
Appserv(Apache) 配置ssl证书
centos7-httpd虚拟主机
一台WEB服务器发布单个网站会非常浪费资源,所以一台WEB服务器上会发布多个网站,
yuezhimi
2020/09/30
5220
centos7-httpd虚拟主机
LAMP环境-限定PHP解析、useragent、PHP相关配置、Apache相关配置
本节内容应用于对静态文件目录或可写的目录进行优化设置,通过限制解析/访问权限来避免别恶意攻击,提高安全性。
阿dai学长
2019/04/03
1.2K0
windows下对apache配置https协议的方法
windows下对apache配置https协议: 1、安装好apache环境,注意要装ssl版本的。这里装在c:/apache目录下。 2、生成服务器证书: 1)在DOS命令下进入apache/bin目录 2)在windows环境下需先设置Openssl环境变量:
用户7639835
2021/08/27
2.3K0
OpenWRT配置Apache Webdav By HKL,
本文主要实现在OpenWRT路由器配置Apache2 based 的 Webdav(s)共享文件,之前曾经试过通过 lighttpd部署Webdav 不过由于在尝试通过lighttpd部署的Webdav作为Joplin的后端Webdav存储时,会出现4XX的故障码,经查询,应该是lighttpd的Webdav默认不是全部的Webdav Method都支持,所以这次改用OpenWRT Apache2 Webdav
hiplon
2020/07/22
3.3K0
phpstudy如何安装ssl证书
首先,确保你的apache编译了ssl模块,这是支持ssl证书必要的条件(如果没有,请编译,打开phpstudy——设置——PHP模块扩展——php-openssl前面勾选上)。 第一:进入到apache目录下,httpd.conf找到#LoadModule ssl_module modules/mod_ssl.so,去掉前面的注释符,使得ssl模块生效(如果该模块已去掉注释,请不用操作)。 第二,找到配置80端口http的网站配置的地方,一般在如下路径:D:\phpStudy\Apache\conf有一个
herve
2018/06/25
3.4K0
apache https配置详细步骤讲解
主要讲述在windows下apache配置SSL以实现http转换为httpsSSL: SSl是为Http传输提供安全的协议,通过证书认证来确保客户端和网站服务器之间的数据是安全。也就是说在SSL下http传输是安全的,我们成为 https.
习惯说一说
2019/07/16
8.6K1
编译Apache服务部署静态网站
Apache是世界使用排名第一的Web服务器软件,它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一.它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中.同时Apache音译为阿帕奇,是北美印第安人的一个部落,叫阿帕奇族,在美国的西南部.也是一个基金会的名称.
王 瑞
2022/12/28
1.5K0
相关推荐
Linux部署apache并配置SSL证书
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验