centos7上apache2配置https

本文将告诉你怎么去配置apache2的https

前提条件:

  1. 安装了apache2
  2. apache2所在目录是/usr/local/
  3. ssl证书已上传到了apache2/conf 目录下(一般是一个zip包) 如果名称不叫ssl.zip 请把名称改成ssl.zip (mv xxxx.zip ssl.zip)

    准备安装

  4. 首先用root账户登录到linux服务器

1
2
3
cd /usr/local/apache2/conf/
ls #查看当前目录下的所有文件
unzip -o ssl.zip -d ssl

安装证书

1.打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到

1
2
3
4
vi /usr/local/apache2/conf/httpd.conf
\#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
\#Include conf/extra/httpd_ssl.conf
\#把以上两句话前面的#去掉

2.打开 apache 安装目录下 conf/extra 目录中的 httpd-ssl.conf 文件 ( 注释:yum 安装配置目录:conf.d/ssl.confubuntu/apache2 安装目录:conf/sites-enabled/*.conf ), 在配置文件中查找以下配置语句:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
vi /usr/local/apache2/conf/extra/httpd-ssl.conf
#找到对应的代码进行修改,找不到的进行添加
#·添加 SSL 协议支持语句,关闭不安全的协议和加密套件
SSLProtocol all -SSLv2 -SSLv3
#·修改加密套件如下
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
#·将服务器证书公钥配置到该路径下(在 conf 目录下创建 ssl 目录,将 for Apache 里面的三 个证书文件拷贝到 ssl 目录下)
SSLCertificateFile conf/ssl/public.pem (证书公钥)
#·将服务器证书私钥配置到该路径下
SSLCertificateKeyFile conf/ssl/订单号.key (证书私钥)
#·将服务器证书链配置到该路径下
SSLCertificateChainFile conf/ssl/chain.pem (证书链)删除行首的“#”号注释符
#保存退出。
:wq

3.重启 Apache。重启方式:进入 Apache 安装目录下的 bin 目录,运行如下命令

1
2
cd /usr/local/apache2/bin/
./apachectl -k stop./apachectl -k start

配置网站目录

1
2
3
4
5
6
7
8
9
vi /user/local/apache2/conf/extra/httpd-ssl.conf
#找到
<VirtualHost _default_:443>
DocumentRoot "/usr/local/apache2/htdocs"
#修改 "/usr/local/apache2/htdocs" ----> "/yjdata/www/www/"
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:10000/yjdata/www/www/$1
DirectoryIndex index.html index.php
ServerName 你的域名:443
:wq