反向代理 就是通过一台代理服务器,让Internet用户可以访问到内部网络上的服务器

下图中192.168.0.4 可以理解带有2个网卡,一个是公网ip,一个是192.168.0.4

代理内外中的2个服务器上的2个服务,分别是运行在9000端口和81端口

01)安装 Apache2:
    sudo apt-get install apache2
    测试访问:192.168.0.4

02)重启服务器:
    sudo /etc/init.d/apache2 restart

03)虚拟主机+反向代理 配置:

目标是:用安装apache2的服务器ip 192.168.0.4 代理运行在192.168.0.15:9000上的tomcat服务器
    前提是:
    192.168.0.4安装好了apache2并可以正常访问
    192.168.0.15:9000也可以正常访问

启用这几个模块
    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
    LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    LoadModule proxy_connect_module modules/mod_proxy_connect.so
    LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
    LoadModule proxy_http_module modules/mod_proxy_http.so
    
    启用模块   sudo a2enmod <model>  
    禁用模块   sudo a2dismod <model>

上面提到的几个启动模块命令如下
    sudo a2enmod proxy
    sudo a2enmod proxy_ajp
    sudo a2enmod proxy_balancer
    等等

/etc/apache2/sites-available/ 目录中建立一个文件 linuxidc

<VirtualHost *:80>
ServerName www.linuxidc.com
ServerAlias linuxidc.com
ProxyPreserveHost On
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://192.168.0.15:9000/
ProxyPassReverse / http://192.168.0.15:9000/
</VirtualHost>

然后执行 启用这个站点 
sudo a2ensite linuxidc
service apache2 reload

/etc/apache2/sites-available/ 目录中建立一个文件 88181

<VirtualHost *:80>
ServerName www.88181.com
ServerAlias 88181.com
ProxyPreserveHost On
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://192.168.0.11:81/
ProxyPassReverse / http://192.168.0.11:81/
</VirtualHost>

然后执行 启用这个站点
sudo a2ensite 88181
service apache2 reload

修改C:\WINDOWS\system32\drivers\etc\hosts进行测试
192.168.0.4       linuxidc.com
192.168.0.4       88181.com

关闭一个虚拟站点
sudo a2dissite linuxidc  
sudo a2dissite 88181

04)Ubuntu的/etc/apache2目录解释:

apache2.conf 核心配置文件,一般不需要修改!
    conf.d 目录,里面包含了一些字符集设置,文档等设置!
    dav_svn.authz 和dav_svn.passwd 是前面做SVN时,相关权限、密码文件。
    envvars 定义了运行时的用户身份——www-data。
    httpd.conf 是Apache留给我们自己折腾的配置文件,默认为空。apache2.conf 会加载这个文件。
    ports.conf 端口默认配置。apache2.conf 会加载这个文件。
    magic 为mod_mime_magic模块服务。
    mods-enabled 和mods-available mods-enabled 会被apache2.conf 加载,里面包含*.load和*.conf文件。*.load文件中是加载相应的模块(位于/usr/lib/apache2/modules/ 中),而*.conf中是对应的基本配置。但这些文件其实都是链接到mods-available 中相应的文件上。当我们通过a2enmod 操作时,实际上正是操作了这些软链接。
    sites-available 和sites-enabled 与 mods-enabled 和mods-available 的关系类似,只是其中包含的是站点内容。

05)Ubuntu的Apache的配置文件解释:

Apache在启动时会自动读取/etc/apache2/apache2.conf的配置信息。
    而其他的一些配置文件,则是通过Include指令包含进来
    在apache2.conf中可以找到这些Include行:

# Include module configuration: 
        Include /etc/apache2/mods-enabled/*.load
        Include /etc/apache2/mods-enabled/*.conf
         
        # Include all the user configurations:
        Include /etc/apache2/httpd.conf
         
        # Include ports listing
        Include /etc/apache2/ports.conf

# Include generic snippets of statements
        Include /etc/apache2/conf.d/
         
        # Include the virtual host configurations:
        Include /etc/apache2/sites-enabled/

06)配置错误:
    apache2"NameVirtualHost *:80 has no VirtualHosts" 
     
    对于同一主机支持多个虚拟主机的情况,只需要命名一次NameVirtualHost,如果在每个虚拟主机配置文件中都加上NameVirtualHost *:80 ,则会报这个警告。

Ubuntu下Apache虚拟主机+反向代理的更多相关文章

  1. Linux下Apache虚拟主机配置

    Linux下Apache虚拟主机的三种配置.这样可以实现一台主机架构多个独立域名网站.其中基于域名的最为常见.性价比也最高.下面PHP程序员雷雪松详细的讲解下Linux下Apache虚拟主机配置的具体 ...

  2. nginx 虚拟主机+反向代理+负载均衡

    nginx是一款免费.开源的http服务器,它是由俄罗斯程序设计师开发的,官方测试,nginx能支撑5万的并发量,主要功能有虚拟主机.反向代理和负载均衡等. nginx配置 # 全局块 ... # e ...

  3. 搭建nginx服务器,虚拟主机,反向代理

    1 搭建Nginx服务器 1.1 问题 在IP地址为192.168.10. 5的主机上安装部署Nginx服务,并可以将Nginx服务器升级到更高版本,要求编译时启用如下功能: SSL加密功能 查看服务 ...

  4. win 下 apache 虚拟主机配置方式

    虚拟主机的配置在apache安装目录下/conf/extra/httpd-vhosts.conf文件中,需要在/conf/httpd.conf中开启. LoadModule vhost_alias_m ...

  5. Windows下Apache 虚拟主机 VirtualHost 配置

    以下方式适合原生 Apache, XAMPP 和 WAMP 套件 1.修改Apache配置文件(httpd.conf),如下: # Virtual hostsInclude conf/extra/ht ...

  6. CentOS下Apache虚拟主机配置

    通过phpinfo可以看到Apache安装的目录 修改配置文件,首先将配置文件备份 编辑httpd.conf,并找到虚拟路径配置的部分 vi httpd.conf 在vi下先按esc在键入 :/vho ...

  7. nginx基于域名的虚拟主机 反向代理配置实例

    vi /etc/nginx/conf.d/safeadmin.xxx.com.conf: server { listen 80; server_name safeadmin.xxxx.com; loc ...

  8. 配置LANMP环境(7)-- 配置nginx反向代理,与配置apache虚拟主机

    一.配置nginx反向代理 1.修改配置文件 vim /etc/nginx/nginx.conf 在35行http下添加一下内容: include /data/nginx/vhosts/*.conf; ...

  9. Linux下添加apache虚拟主机

    一切在确保apache被正确安装的前提下 设置虚拟主机 创建虚拟目录 现在,让我们继续安装虚拟主机.虚拟主机命名为local.gis. 创建一个公用的文件夹来存放这虚拟主机的数据. 首先,让我们为lo ...

随机推荐

  1. crm 中使用的Django方法

    . 通过ChangeList封装好多数据 . 销售中公共资源:Q查询,3天 15天 . 使用yield实现 - 生成器函数,对数据进行加工处理 - __iter__和yield配合 . 获取Model ...

  2. Android疑问小结

    1:为什么新建项目继承自ActionBarActivity而不是Activity? 为了版本兼容的,你新建项目时最低版本选择4.0以上,就不会出现appcompat_v7包,AndroidBarAct ...

  3. bzoj 3924 点分

    感谢asm.Definer清楚明了的题解: http://www.cnblogs.com/Asm-Definer/p/4470112.html 收获: 1.  关于重心, 对于一个无向图, 我们这样给 ...

  4. ELASTIC 动态修改配置API

    工作中使用ELASTIC,我们常有需要修改的配置项,但有时又不想重启elastic,这时候就需要elasticsearch内置的修改集群配置API上场了. 这个API非常的简单. curl -XPUT ...

  5. How to modify analog output range of Arduino Due

    Voltage Translation for Analog to Digital Interface ADC How to modify analog output range of Arduino ...

  6. Java知识回顾 (6)正则表达式、方法、文件与异常

    一.正则表达式 正则表达式定义了字符串的模式. 正则表达式可以用来搜索.编辑或处理文本. 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别. Java 正则表达式和 Perl 的是最为相似 ...

  7. UE.getEditor('editor')

    <script type="text/javascript"> $().ready(function(){ var editor = document.getEleme ...

  8. Learning to rank的讲解,单文档方法(Pointwise),文档对方法(Pairwise),文档列表方法(Listwise)

    学习排序(Learning to Rank) LTR(Learning torank)学习排序是一种监督学习(SupervisedLearning)的排序方法.LTR已经被广泛应用到文本挖掘的很多领域 ...

  9. [转]oracle 常用的指令

    1.显示当前用户名 select user from dual; show user 2.显示当然用户有哪些表 select * from tab; 3.显示当所有用户的表 select * from ...

  10. C++11 并发指南四(<future> 详解三 std::future & std::shared_future)

    上一讲<C++11 并发指南四(<future> 详解二 std::packaged_task 介绍)>主要介绍了 <future> 头文件中的 std::pack ...