1、搭建linux虚拟机
2、安装Apache服务
yum install httpd* -y
查看apache配置是否有问题
apachectl configtest
修改Apache的httpd.conf配置文件
vi /etc/httpd/httpd.conf
修改ServerName为服务器IP
如果修改根文件夹位置 DocumentRoot "/var/web/ROOT" 可能导致请求访问不到
解决方法:
chcon -R --type=httpd_sys_rw_content_t 目录
3、安装shibboleth sp服务
通过yum源的方式安装
wget [http://download.opensuse.org/repositories/security://shibboleth/CentOS_7/security:shibboleth.repo](http://download.opensuse.org/repositories/security://shibboleth/CentOS_7/security:shibboleth.repo) -P /etc/yum.repos.d
如果没有wget,需要安装一下
yum -y install wget
安装shibboleth sp
yum install shibboleth
启动sp 和 apache服务
systemctl start shibd
systemctl enable shibd
systemctl restart httpd
查看shibboleth sp配置是否有问题
shibd -t
访问shibboleth sp测试网址看是否成功
curl http://localhost/Shibboleth.sso/Status
如果访问不到可能是因为shibboleth2.xml文件中的证书加密没有关闭
将shibboleth2.xml 中handlerSSL="true" true改为 false 关闭证书加密
4、安装配置tomcat
运行命令解压
tar -zxvf tomcat.tar.gz -C /usr/local
Tomcat 配置文件server.xml中打开 8009端口注释,address为服务器IP跟步骤5中的worker.controller.host一致
image.png
在HOST标签内增加下面配置
<Context path="" docBase="/var/www/html"
reloadable="false" debug="0">
</Context>
image (1).png
5、配置tomcat和apache连接
安装编译mod_jk
下载mod_jk包地址:https://tomcat.apache.org/download-connectors.cgi
解压压缩包
tar -zxvf tomcat-connectors-1.2.42-src.tar.gz
进入解压目录,在进入native目录
查找本地apxs位置
find / | grep apxs
安装
./configure --with-apxs=/usr/bin/apxs (apxs路径为上面查到的位置)
make
make install
cd apache-2.0 如果目录中有mod_jk.so文件 代表成功
如果上面命令报错的话可能因为没有安装gcc,运行安装
yum install gcc gcc-c++ -y
ps:如果没用apxs的话,需要先安装
# cd /etc/
# vi yum.conf
// 如果有关于 apache or httpd 的 “exclude”这样一行,把它注释掉;如果没有,就直接退出就行
// 保存并退出
# yum install apr-util-devel
# yum install httpd-devel
在httpd的conf路径下创建两个文件,分别是mod_jk.conf 和 workers.properties
编辑mod_jk.conf
#加载 mod_jk.so 文件,放置在最上
LoadModule jk_module /etc/httpd/modules/mod_jk.so
#加载 tomcat 参数配置文件
JkWorkersFile /etc/httpd/conf/workers.properties
#日志保存文件
JkLogFile /var/log/httpd/mod_jk.log
#日志等级
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
#JkRequestLogFormat "%w %V %T"
#######请求拦截, controller负载均衡控制器名称
JkMount /*.jsp controller
############## end #######################
编辑workers.properties
#server
worker.list = controller
#========tomcat========
worker.controller.port=8009 #端口号与tomcat一致
worker.controller.host=127.0.0.1 #服务器IP
worker.controller.type=ajp13
worker.controller.lbfactor = 1
配置httpd
最下面增加下面代码
Include /etc/httpd/conf/mod_jk.conf
测试
启动httpd和tomcat服务
新建jsp文件 index.jsp 内容如下
<%
System.out.println( "Evaluating date now" );
java.util.Date date = new java.util.Date();
%>
Hello! The time is now <%= date %>
访问结果80端口和8080端口的index.jsp同为经过处理的jsp页面即为正确,如下
image (2).png
网友评论