文档章节

linux配置实践:httpd+tomcat7+域名虚拟主机配置

Nob
 Nob
发布于 2014/06/20 15:45
字数 625
阅读 1434
收藏 1

配置需求:apache+tomcat7+多个域名的虚拟主机

配置环境:腾讯云、Centos6.3 64位

所需软件:

jdk-7u55-linux-x64.tar.gz
apache-tomcat-7.0.50.tar.gz
tomcat-connectors-1.2.40-src.tar.gz

配置步骤:

  1. 安装Oracle jdk:见这篇  http://my.oschina.net/freegeek/blog/266413

  2. 安装apache (这里直接使用系统自带的)

  3. 安装mysql

  4. 安装tomcat

  5. 连接apache和tomcat:

  6. 配置虚拟主机目录


编译安装tomcat-connectors

安装前请查看安装apache库文件中又没有mod_jk.so,我就是使用yum安装的httpd2.2里面已经有了mod_jk.so,没有的话请继续下面编译

以下两步参考了:

         http://www.shangxueba.com/jingyan/121949.html

         http://www.blogjava.net/pengo/archive/2011/04/15/348331.html

         http://blog.chinaunix.net/uid-26881541-id-3338854.html

安装过程中可能需要解决安装依赖,分别安装

      yum install autoconf  libtool

如果没有安装apache开发工具包,还需要安装,开发包里有apxs

      yum install httpd-devel.x86_64 

通过以下命令编译连接器:

  tar zxvf tomcat-connectors-1.2.30-src.tar.gz
  cd  tomcat-connectors-1.2.30-src/native
  ./buildconf.sh
  ./configure --with-apxs=/usr/sbin/apxs
  make
  make install

将编译后的库文件复制到apache库目录下:

 cp /bmdata/software/tomcat-connectors-1.2.40-src/native/apache-2.0/mod_jk.so

通过yum安装的apache 模块库文件在:/usr/lib64/httpd/modules

解压安装的库文件在:apache2/modules/


详细配置:

以下配置文件为/etc/httpd/conf/下

mod_jk.conf

#加载jk连接器
LoadModule jk_module  modules/mod_jk.so
  
#指定jk连接器工作配置文件
JkWorkersFile         conf/workers.properties
  
#指定jk连接器转发给tomcat的uri
JkMountFile           conf/uriworkermap.properties

#指定jk连接器工作日志文件
JkLogFile             logs/mod_jk.log
 
#指定jk连接器日志级别
JkLogLevel            info 
 
#指定jk连接器日志格式
JkLogStampFormat      "[%a %b %d %H:%M:%S %Y] "
 
#指定哪些请求交给tomcat处理
#"worker1"为在workers.properties里指定的tomcat
JkMount /*            worker1


workers.properties

#tomcat列表
worker.list=worker1
#tomcat与apache通信协议
worker.worker1.type=ajp13
#ajp13 端口号
worker.worker1.port=8009
#tomcat的主机地址,如不为本机,请填写ip地址
worker.worker1.host=localhost


uriworkermap.properties

/*=worker1
!/*.gif=worker1
!/*.jpg=worker1
!/*.png=worker1
!/*.css=worker1
!/*.js=worker1
!/*.htm=worker1
!/*.html=worker1


tomcat配置文件:

server.xml

      .........

      <Host name="weixin.banmacoffee.com"  appBase="/data/www/weixin.banmacoffee.com"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
            <Context path="" docBase="banmacoffee" reloadable="true" />
      </Host>
    </Engine>
  </Service>
</Server>

httpd文件,采用腾讯云CentOs6.3 64位中原装httpd服务器的http.conf文件修改而来:

httpd.conf

Include conf.d/*.conf
Include conf/mod_jk.conf 

......

#ServerName www.example.com:80
NameVirtualHost *:80
<VirtualHost *:80>
        ServerName weixin.banmacoffee.com
        DocumentRoot /data/www/weixin.banmacoffee.com
        <Directory "/data/www/weixin.banmacoffee.com">
            Options Indexes FollowSymLinks
            AllowOverride None
            Order allow,deny
            Allow from all
        </Directory>
	ErrorLog logs/weixin.banmacoffee.com-error_log
        CustomLog logs/weixin.banmacoffee.com-access_log common
	JkMount /* worker1
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin banmacoffee.com
    DocumentRoot /data/www/banmacoffee.com
    ServerName banmacoffee.com
    ErrorLog logs/banmacoffee.com-error_log
    CustomLog logs/banmacoffee.com-access_log common
</VirtualHost>


[参考文献]

http://www.neoease.com/apache-virtual-host/

© 著作权归作者所有

共有 人打赏支持
Nob

Nob

粉丝 16
博文 86
码字总数 58473
作品 0
东城
个人站长
Apache 虚拟主机 VirtualHost 配置

虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同的域名...

夏小八
2012/03/12
0
0
DNS服务部署之一 域名解析服务

人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是多对一的关系,一个ip地址不一定只对应一个域名,且一个域名只可以对应一个ip地址,它们之间的转换工作称为域名解析,域名解析...

cchenyz
05/13
0
0
Nginx初探(2)——配置虚拟主机

在Nginx初探(1)——搭建环境中,我们已经在Linux上安装了Nginx环境,本章将讲解如何在一台服务器上配置多个虚拟主机。 一、引入 我们知道,要想在一台服务器上配置多个网站,服务器有两种方...

yuanlaijike
03/23
0
0
Httpd服务器中构建Web虚拟主机

Web虚拟主机指的是在同一台服务器中运行多个Web站点,其中的每一个站点实际上并不肚子占用整个服务器,因此被成为“虚拟”Web主机。通过虚拟Web主机服务可以充分利用服务器的硬件资源,从而大...

cchenyz
06/05
0
0
apache添加虚拟主机配置+本地hosts绑定域名

1.本地hosts 什么是本地hosts?我们知道访问一个域名,通过dns服务器得到该域名所指向的服务器ip地址,然后通过ip地址和服务器建立连接,完成剩下的事情。那么当开发过程中我们没有域名的时候...

吾爱
2014/08/05
0
1

没有更多内容

加载失败,请刷新页面

加载更多

Flask 开发填坑

插件的选择: flask-security 真的是个鸡肋啊。自带的页面,好丑。还不如用flask-login来做呢。

pearma
6分钟前
0
0
讲述下 :LVM逻辑卷管理遇到的问题

LVM学习逻辑卷管理创建逻辑卷遇到的问题 1 实验环境 系统 内核 发行版本 CentOS 2.6.32-754.2.1.el6.x86_64 CentOS release 6.10 (Final) 由于是最小化安装没有xfs命令,yum安装如下包支持此...

linuxprobe16
41分钟前
0
0
day95-20180922-英语流利阅读-待学习

Hey Jude 半个世纪传唱不衰的背后故事 毛西 2018-09-22 1.今日导读 2004 年,The Beatles 被《滚石》杂志选为“历史上最伟大的 50 位流行音乐家的第一位”。这四名来自英国利物浦的男孩不仅对...

飞鱼说编程
48分钟前
1
0
OSChina 周六乱弹 —— 放假前期焦虑症晚期

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @andonny :分享Matteo的单曲《Panama》: 《Panama》- Matteo 手机党少年们想听歌,请使劲儿戳(这里) @新垣吉衣OSC :我发现只要去有小朋友...

小小编辑
今天
163
10
wait()被notify()后,接着执行wait()后面的语句

wait()被notify()后,接着执行wait()后面的语句

noteman
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部