Apache 和 Tomcat 整合、服务器上搭建多个网站的方法

前段时间在网上看到有很多教程是关于域名映射服务器、通过域名直接访问服务器的网站。

我也有在网上看了很多教程、也按照上面做,但是发现不起效果。

后来我自己总结了一次希望能帮助正在被这些问题困扰的程序员们。

我是一名java程序员,但是在公司却担任全栈的角色。说的不好望大家指裁!

之前在网上看到一些别人的教程都是通过修改apache的http.conf文件,

比如你的项目是8888端口

apache默认端口是80  你在域名网站绑定的IP默认访问也是80 这样你访问就一直会显示apache的index.html页面,

所以这样就会一直访问不到你的项目。如何才能达到这样的效果:

http://www.test.com:80,http://www.test.com:81,http://www.test.com:82

那就是整合Apache和Tomcat!!简单明了

Linux如何部署tomcat我就不说了,这个是最基本的。微笑

下面开始上硬货。

整合 Apache 和 Tomcat 需要安装 jakarta-tomcat-connectors

使用 yum 安装 Apache
$ sudo yum install httpd httpd-devel
安装  jakarta-tomcat-connectors
$ wget http://mirror.bjtu.edu.cn/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.40-src.tar.gz
$ tar zxf tomcat-connectors-1.2.40-src.tar.gz 
$ cd tomcat-connectors-1.2.40-src/native/
$ ./configure --with-apxs=/usr/sbin/apxs
$ make

安装好了后会发现


当然是去掉后面的端口号啦。可以通过这样配置、

到目录:/etc/httpd/conf

新建文件:

vi mod_jk.conf

vi uriworkermap.properties

vi workers.properties



在mod_jk.conf插入一下内容:

# 载入 jk 模块
LoadModule jk_module modules/mod_jk.so
# 指出mod_jk模块工作所需要的工作文件workers.properties的位置
JkWorkersFile /etc/httpd/conf/workers.properties
JkMountFile   /etc/httpd/conf/uriworkermap.properties
JkLogFile  /etc/httpd/logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
# 将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理
JkMount /*.do worker1
JkMount /*.jsp worker1
JkMount /*.html worker1

在uriworkermap.properties 插入:

/*=worker1

在workers.properties插入:

# Defining a worker named worker1 and of type ajp13
# 创建名为 worker1 的 worker
worker.list=worker1
# Set properties for worker1
# work1 使用ajp13协议与tomcat 进程通讯
worker.worker1.type=ajp13
# 监听ajp13请求的的tomcat worker主机地址
worker.worker1.host=localhost
# 默认情况下tomcat在ajp13协议中使用的端口为8009
worker.worker1.port=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300

其中上面8009就是你现在项目的端口号,可以根据需求来配置。

上面这三个文件都有了 然后只需要在httpd.conf修改如下:

搜索Listen 默认是localhost:80 只需要加上你服务器的ip地址:80  (123.123.666.666:80)

然后找到

#
# Load config files from the config directory "/etc/httpd/conf.d".
#
Include conf.d/*.conf 改掉


最后在最底下 

<VirtualHost *:80>
        ProxyPass / http://服务器IP:8080/
        ProxyPassReverse / http://服务器IP:8080/
        ServerName 你的域名
</VirtualHost>

然后保存退出 

重新启动httpd服务


祝大家进行的顺利微笑

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页