访问Tomcat时无需加端口号

整合Apache和Tomcat,使得Java工程和PHP工程都能共用80端口,访问网站时,无需在地址栏中加端口号,具体实现如下,感兴趣的朋友可以参考下哈

目的:

整合Apache和Tomcat,使得Java工程和PHP工程都能共用80端口,访问网站时,无需在地址栏中加端口号。

环境说明:

Linux CentOS 32位

Apache 2.2.2

Tomcat 7.0.37

准备工作:

下载mod_jk.so

http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/

打开链接找到合适的文件下载,下载后改名为mod_jk.so

修改Apache相关文件

1、将mod_jk.so上传至/modules目录下

2、在/apache/conf目录下新建文件mod_jk.conf

#Load mod_jk module

LoadModule jk_module modules/mod_jk.so

#Where to find workers.properties

JkWorkersFile conf/workers.properties

#Where to put jk logs

JklogFile logs/mod_jk.log

#Set the jk log level[debug/error/info]

JkLogLevel info

#Select the log format

JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

#JkOptions indicate to send SSL KEY SIZE,

JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

#JkRequestLogFormat set the request format

JkRequestLogFormat "%w %V %T"

#Send servlet for context /examples to worker named ajp13

JkMount /servlet/* ajp13

#Send all files under MyProject for to worker named ajp13

JKMount /MyProject ajp13

3、在/apache/conf目录下新建文件workers.properties

worker.list=ajp13

worker.ajp13.port=8009

worker.ajp13.host=localhost

worker.ajp13.type=ajp13

worker.ajp13.lbfactor=1

4、修改/conf/httpd.conf

Listen 80改为Listen 你的IP:80

ServerName localhost:80

最后一行添加 Include conf/mod_jk.conf

找到DocumentRoot,记住它的值,后面有用。我的是/www/apache/htdocs

5、添加<VirtualHost>节点

复制代码 代码如下:

<VirtualHost *:80>

ServerAdmin webmaster@dummy-host.example.com

ServerName www.sample.cn/m

ProxyRequests Off

<Proxy *>

Order deny,allow

Allow from all

</Proxy>

ProxyPass /MyProject http://www.sample.cn/MyProject/pages/login.jsp

ProxyPassReverse /MyProject http://www.sample.cn/MyProject/pages/login.jsp

</VirtualHost>

【注意:】红字部分的名称必须一致,也就是说必须和tomcat下的工程名一致

修改Tomcat相关文件

1、在tomcat下添加ROOT.xml

我的目录是这样的:/opt/tomcat/conf/Catalina/localhost

新建ROOT.xml 

复制代码 代码如下:

<?xml version='1.0' encoding='utf-8'?>

<Context displayName="Welcome to Tomcat" docBase="" path="" debug="0"></Context>

2、修改/conf/server.xml

I.修改默认端口号(也可以不改,默认一般为8080)

<Connector port="9090" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

II.检查AJP端口号(8009不可修改,若这一句被注释掉了,取消注释)

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

III.检查<HOST>节点

<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏DannyHoo的专栏

iOS开发中点击推送跳转到指定页面

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/...

5822
来自专栏数据之美

使用 django-blog-zinnia 搭建个人博客

django-blog-zinnia 虽然小巧,但是具备了个人博客应用的全部基础功能,且具有很高的拓展性,并且开箱即用。以下是官方列出的一些特性: 评论 站...

3319
来自专栏依乐祝

Asp.NetCoreWebApi图片上传接口(二)集成IdentityServer4授权访问(附源码)

上一篇文章中,给大家讲解了如何通过 Asp.Net Core Web Api实现图片上传的接口,具体的可以[点这里查看][https://www.cnblogs...

1371
来自专栏依乐祝

Net Core集成Exceptionless分布式日志功能以及全局异常过滤

这篇文章有一部分内容翻译自官方文档,[点我阅读][https://github.com/exceptionless/Exceptionless.Net/wiki...

1082
来自专栏开心的学习之路

Fedora27搭建GPU版TensorFlow

主机:华硕(ASUS)G11飞行堡垒 显卡:GeForce 1070 原操作系统为win10,准备安装Fedora 27,从零开始搭建GPU版TensorF...

3607
来自专栏陈满iOS

iOS·采用第三方(百度地图SDK)实现定位等功能开发

首先,申请一个baidu账号,接着进入新建密钥入口申请成为baidu地图开发者,填写相关开发者信息和短信验证码。接下来点击创建应用,如官方文档新建密钥文档指南里...

5623
来自专栏JarvanMo的IT专栏

Flutter: Failed to notify project evalution listener

又是一个常见的flutter的环境问题,一般发生在引用了plugin之后。因为默认的gradle,kotlin之类的比较旧,而所引用的plugin里面的grad...

2752
来自专栏Linux 杂货铺

使用Apache Guacamole连接虚拟云桌面

Apache Guacamole是一款HTML5应用程序,可通过RDP,VNC和其他协议访问远程桌面。您可以创建一个虚拟云桌面,用户通过Web浏览器即可访问。本...

3.8K4
来自专栏自然语言处理

Anaconda+Sublime搭建机器学习开发环境

1 安装Anaconda集成环境,Anaconda下载,安装下一步一路安装结束。(无需环境变量配置),配置完成后,查看是否成功。

1002
来自专栏逸鹏说道

直传文件到Azure Storage的Blob服务中

题记:为了庆祝获得微信公众号赞赏功能,忙里抽闲分享一下最近工作的一点心得:如何直接从浏览器中上传文件到Azure Storage的Blob服务中。 为什么 如果...

3617

扫码关注云+社区

领取腾讯云代金券