我有一个运行在端口443上的apache服务器,其SSL证书已过期 . 我今天创建了一个新证书,我想替换它 .
我正在运行一顶红帽机 . 所以我进入了/etc/httpd/conf.d/ssl.conf并将现有SSL证书的路径替换为新证书 . 重新启动服务器后,它仍以某种方式指向旧证书 .
任何人都可以帮我一把吗?
提前致谢!
可能会有不止一件事情发生:还有另一个 httpd 服务器的安装,即正在运行的服务器或有多个 .conf 文件 . 我会尝试一个广泛的答案 .
httpd
.conf
首先找到apache的 config 文件夹:
$ httpd -V Server version: Apache/2.2.15 (Unix) ....... ....... -D DEFAULT_PIDLOG="run/httpd.pid" -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf"
现在检查以查看任何.conf文件中定义的 vhosts 的数量 . 和/或你可以简单地grep“ SSLCertificateFile ”用于指定证书并找出它所属的 vhost 并在那里进行更新 .
vhosts
SSLCertificateFile
vhost
除非主 .conf 文件指向 HTTPD_ROOT 之外的 .conf 文件,否则您应该成功 .
HTTPD_ROOT
编辑1:记住要确保从上面获得的pid与正在运行的Apache httpd的pid相匹配 .
$ cat /etc/httpd/run/httpd.pid 23799 root@devssl1-m1-ap-->/app/workspace/eclipse/rcmtools/ccc/trunk $ ps -eaf | grep httpd root 23799 1 0 Mar06 ? 00:00:04 /usr/sbin/httpd -k start
您应该检查您正在访问的vhost的配置文件 . 也许路径在那里重新定义 .
2 回答
可能会有不止一件事情发生:还有另一个
httpd
服务器的安装,即正在运行的服务器或有多个.conf
文件 . 我会尝试一个广泛的答案 .首先找到apache的 config 文件夹:
现在检查以查看任何.conf文件中定义的
vhosts
的数量 . 和/或你可以简单地grep“SSLCertificateFile
”用于指定证书并找出它所属的vhost
并在那里进行更新 .除非主
.conf
文件指向HTTPD_ROOT
之外的.conf
文件,否则您应该成功 .编辑1:记住要确保从上面获得的pid与正在运行的Apache httpd的pid相匹配 .
您应该检查您正在访问的vhost的配置文件 . 也许路径在那里重新定义 .