前面一直在使用WDCP,感觉是个很好的主机面板,安装配置完成后,后期一些不懂得Linux人也可以使用,太方便了有木有。

多的不说了,也是通过 http://www.wdlinux.cn/bbs/viewthread.php?tid=7833 这篇帖子的启发,让Apache也支持SNI一把~~

首先编译安装OpenSSL

wget http://www.openssl.org/source/openssl-0.9.8l.tar.gz //下载openssl的安装包
tar zxvf openssl-0.9.81.tar.gz //解压
cd open-0.9.81 //切换到解压后的目录
./config --prefix=/usr/local/openssl enable-tlsext //配置安装路径到/usr/local/openssl 并启用tlsext加入SNI支持
make & make install //编译并安装

然后重编译安装Apache,这次我们使用2.2.26版本的apache

wget http://mirrors.hust.edu.cn/apache/httpd/httpd-2.2.26.tar.gz //下载apache安装包,可以使用其他更快速的源下载
tar zxvf httpd-2.2.26.tar.gz //解压
cd httpd-2.2.26 //切换到解压后的目录
./configure --prefix=/www/wdlinux/httpd-2.2.26 --enable-rewrite --enable-deflate --disable-userdir --enable-so --enable-expires --enable-headers --with-included-apr --with-apr=/usr --with-apr-util=/usr --enable-ssl --with-ssl=/usr/local/openssl //配置所需要的模块
make & make install //编译并安装

最后的步骤,使用编译好的apache,别忘了替换httpd.conf 和 vhost里面的虚拟主机配置文件

cd /www/wdlinux //切换到wdlinux的目录
rm apache //删除原来的链接
ln -s httpd-2.2.26 apache //建立个软连接
reboot //重启一下

现在你的主机就支持SNI了~~

后记:

需要将/www/wdlinux/httpd-2.2.22/logs/httpd.pid文件移动到/www/wdlinux/httpd-2.2.26/logs文件夹中

mv /www/wdlinux/httpd-2.2.22/logs/httpd.pid /www/wdlinux/httpd-2.2.26/logs/httpd.pid

接着复制一些需要的配置文件和模块

cp /www/wdlinux/httpd-2.2.22/conf/httpd-wdl.conf /www/wdlinux/httpd-2.2.26/conf/httpd-wdl.conf
cp /www/wdlinux/httpd-2.2.22/conf/rpaf.conf /www/wdlinux/httpd-2.2.26/conf/rpaf.conf
cp /www/wdlinux/httpd-2.2.22/modules/libphp5.so /www/wdlinux/httpd-2.2.26/modules/libphp5.so
cp /www/wdlinux/httpd-2.2.22/modules/mod_rpaf-2.0.so /www/wdlinux/httpd-2.2.26/modules/mod_rpaf-2.0.so

需要修改/www/wdlinux/httpd-2.2.26/conf/vhost文件夹的所有者,否则无法在WDCP中添加虚拟主机。

chown -R wdcpu:wdcpg /www/wdlinux/http-2.2.26/conf/vhost

在httpd.conf中添加一句

SSLStrictSNIVHostCheck off