欢迎转载,转载时请保留全文及出处。

Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践

  1. Apache安装

  1. 下载源程序(http://httpd.apache.org/)

[xiaohui@vmCentOS6 Downloads]$ wgethttp://www.eu.apache.org/dist/httpd/httpd-2.4.7.tar.gz

  1. 解压缩

$su - root

# tar xvf httpd-2.4.7.tar.gz

  1. 安装编译环境

yum -y install gcc

yum -y install make

yum -y install gcc-c++

  1. 下载安装apr和pcre

#wgethttp://archive.apache.org/dist/apr/apr-1.5.0.tar.gz

#wgethttp://archive.apache.org/dist/apr/apr-util-1.5.3.tar.gz

wgethttp://nchc.dl.sourceforge.net/project/pcre/pcre/8.32/pcre-8.32.tar.gz

#tar xvfapr-1.5.0.tar.gz

# tar xvfapr-util-1.5.3.tar.gz

# tar -zxvfpcre-8.32.tar.gz

##进入APR目录编译安装apr

# cd apr-1.5.0

# ./configure--prefix=/usr/local/apr

# make &&make install

##进入APR-UTIL目录编译安装apr-util

# cdapr-util-1.5.3

#./configure--prefix=/usr/local/apr-util --with-apr=/usr/local/apr

# make &&make install

进入pcre目录编译安装

#cd pcre-8.32

# ./configure

# make &&make install

  1. 编译安装apache

# cd httpd-2.4.7

# ./configure--prefix=/usr/local/apache --with-apr-util=/usr/local/apr-util

# make &&make install

  1. 出现/bin/rm:cannot remove `libtoolT’: No such file or directory错误的解决方法

在编译安装apr时运行”#./configure --prefix=/usr/local/apr”可能出现上面的错误提示,这时直接打开configure文件(就在解压的软件包里面),把
$RM “$cfgfile”那行用#注释掉,重新再运行#
./configure --prefix=/usr/local/apr 就可以了。

  1. 关闭SELINUX

[root@vmCentOS6 ~]# vi /etc/sysconfig/selinux

# This file controls the state ofSELinux on the system.

# SELINUX= can take one of thesethree values:

#    enforcing - SELinux security policy is enforced.

#    permissive - SELinux prints warnings instead of enforcing.

#    disabled - No SELinux policy is loaded.

SELINUX=disabled                                           #改成DISABLED

# SELINUXTYPE= can take one of thesetwo values:

#    targeted - Targeted processes are protected,

#    mls - Multi Level Security protection.

SELINUXTYPE=targeted

"/etc/sysconfig/selinux"13L, 457C written

[root@vmCentOS6 ~]#

  1. 关闭防火墙

[root@vmCentOS6 ~]# chkconfig iptables off

  1. 修改apache配置

# cd /usr/local/apache/conf

# vi httpd.conf

  1. 在配置文件httpd.conf中启用服务器名称

ServerName 192.168.xxx.xxx                  #apache服务器本机IP地址

  1. 反向代理设置

  1. 在httpd.conf中启用以下模块

LoadModulerewrite_module modules/mod_rewrite.so

LoadModuleproxy_module modules/mod_proxy.so

LoadModuleproxy_http_module modules/mod_proxy_http.so

  1. 添加需要被反向代理服务器的域名信息

ServerName www.xxxxx.com

ProxyPass / http://www.xxxxx.com

ProxyPassReverse /http://www.xxxxxx.com

  1. 在/etc/hosts文件中添加DNS信息

192.168.X.X www.xxxxxx.com                  #ip地址为此域名对应的内网服务器

4.在域名服务商处将外网域名的DNS指向APACHE代理服务器的公网IP

5.以后添加需要反向代理服务器时要做的工作

a)部署WEB应用服务器(使用内网IP)。

b)在APACHE代理服务器httpd.conf文件中添加上述服务器分配的域名信息

c)在APACHE代理服务器hosts文件中添加DNS信息

d)将外网域名解析到APACHE代理的外网IP

三、启用虚拟主机的方法(此步骤与建立反向代理无关,可以不做)

  1. 在配置文件httpd.conf中启用虚拟主机的配置文件

# Virtual hosts

Includeconf/extra/httpd-vhosts.conf

感谢您的阅读,欢迎光临我的博客,期待与您的交流http://www.cnblogs.com/coffeebox/

Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践的更多相关文章

  1. [转]用apache反向代理解决单外网ip对应内网多个web主机的问题

    用apache反向代理解决单外网ip对应内网多个web主机的问题 转载一个有独立外网IP,需内网服务器对外发布的例子,是应用apache虚拟主机的. 来源地址:http://www.itshantou ...

  2. 在CentOS6.4中安装配置LAMP环境的详细步骤

    本文详细介绍了CentOS6.4系统中安装LAMP服务并对其进行配置的过程,即安装Apache+PHP+Mysql,参照了网上大神的设置,其他Linux发行系统可以参考~ 在本文中部分命令操作需要ro ...

  3. 在CentOS6.4中安装配置LAMP环境的详细步骤 - Leroy-LIZH

    本文详细介绍了CentOS6.4系统中安装LAMP服务并对其进行配置的过程,即安装Apache+PHP+Mysql,参照了网上大神的设置,其他Linux发行系统可以参考~ 在本文中部分命令操作需要ro ...

  4. (原创)VM中的CentOS6.4中安装CloudStack6.3②

    接着VM中的CentOS6.4中安装CloudStack6.3①中文章接着,往下面安装 4.更新 yum 仓库 默认情况下,CentOS的软件源中没有收录最新版本CloudStack,为了能顺利安装, ...

  5. CentOS6.6系统中安装配置Samba的教程

    Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通 ...

  6. 在centos6.5中安装mysql5.7

    简介 博主最近在研究mysql的读写分离和主从复制,一台master和两台slave,三台机器在同一个局域网中,首先就就要在centos6.5中安装mysql5.7.好了,废话不多说,接下来进入正题. ...

  7. CentOs6.5中安装和配置vsftp简明

    这篇文章主要介绍了CentOs6.5中安装和配置vsftp简明教程,需要的朋友可以参考下     一.vsftp安装篇 复制代码代码如下: # 安装vsftpdyum -y install vsftp ...

  8. CentOs6.5中安装和配置vsftp简明教程[转]

    CentOs6.5中安装和配置vsftp简明教程 林涛 发表于:2017-3-17 10:10 分类:WebServer 标签: 101次 一.vsftp安装篇 复制代码代码如下: # 安装vsftp ...

  9. Ubuntu中安装配置 JDK与apache

    一,前期准备: 1.下载apach网址:https://tomcat.apache.org/download-90.cgi 3.下载:jdk网址:http://www.oracle.com/techn ...

随机推荐

  1. SQL cmd 实用工具学习 -1

    启动 sqlcmd 实用工具并连接到 SQL Server 的默认实例 在"开始"菜单上,单击"运行". 在"打开"框中,键入 cmd,然后 ...

  2. jQuery input -> file change事件bug

    由jQuery绑定类型为file的input控件的change事件,发现只能被触发一次,修改方法 --> 原始代码: $input.change(function() { // somethin ...

  3. js中数组的检测方法

    在js中可以使用Object.prototype.toString.call()的来检测一个对象是否为一个数组 //检测数组 var a = [1, 2]; console.log(typeof a) ...

  4. forward 和redirect的区别

    1.从地址栏显示来说 forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地 ...

  5. POJ1722 动态规划

    POJ1722 问题重述: 给定一个数组a[1,2,..,n] .定义数组第i位上的减操作:把ai和ai+1换成ai - ai+1.输入一个n位数组以及目标整数t,求一个n-1次操作序列,使得最后剩下 ...

  6. ASP转PHP手记

    打算将动易网站管理系统移植到PHP环境中,寻寻觅觅了很多PHP内容管理网站,发现网上有动易转PHPCMS的代码,所以就拿定注意用PHPCMS的在google上找到一转换程序,动手做来还成功了,现将此次 ...

  7. vi 编辑器初步

    vi 编辑器初步 4,vi进入后是命令模式 ,可以用i o s 进入插入模式 i ,在当前字符位置插入,o为新开一行插入,s删除当前字符添加 5,r 为直接替换当前字符 6,到行头按0,$为到行尾到未 ...

  8. Unity3D TouchScript 插件教程一

    只是个人学习小记,谈不上教程,但是为了命中搜索引擎关键词,只好装逼了:),可能对于大家来说太简单了吧,网上中文教程没搜到 ,只好自己摸索了. 插件资源下载地址:https://www.assetsto ...

  9. 关于android:focusable属性

    http://www.cnblogs.com/Gaojiecai/archive/2013/06/18/3142783.html Android属性 android:focusableInTouchM ...

  10. cf C. Alice and Bob

    http://codeforces.com/contest/347/problem/C 这道题就是求出n个数的最大公约数,求出n个数的最大值,总共有max1/gcd-n个回合.然后判断如果回合数%2= ...