`
iliuyong
  • 浏览: 141588 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Ubuntu下Apache虚拟主机+反向代理

阅读更多

反向代理 就是通过一台代理服务器,让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/ 目录中建立一个文件 test01

<VirtualHost *:80>
ServerName www.test01.com
ServerAlias test01.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 test01
service apache2 reload

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

<VirtualHost *:80>
ServerName www.test02.com.cn
ServerAlias test02.com.cn
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 test02
service apache2 reload

修改C:\WINDOWS\system32\drivers\etc\hosts进行测试
192.168.0.4       test01.com
192.168.0.4       test02.com.cn

关闭一个虚拟站点
sudo a2dissite test01 
sudo a2dissite test02

 

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 ,则会报这个警告。

  • 大小: 29.6 KB
0
1
分享到:
评论

相关推荐

    ubuntu系统下apache配置虚拟主机及反向代理详解

    自己有两个域名blogsir.com.cn 和 s7star.cn ,都绑定在了我的腾讯云主机上,还有七星网络安全攻防平台的搭建,这里记录下我搭建虚拟主机和反向代理的过程,下面来一起看看详细的介绍: 配置虚拟主机 $ sudo vi /etc...

    Ubuntu 16.04与Apache虚拟主机配置的步骤详解

    众所周知在window下,Apache的配置文件是httpd.conf,但在Linux下安装了Apache后发现其配置并不像window下那么简单,Linux下Apache将各个设置项分在了不同的配置文件中,想想也是有很大的理由的,这样子可以使用户在...

    ubuntu haproxy安装与配置详解

    HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。根据官方数据,其最高极限支持10G的并发。 HAProxy特别适用于那些负载特大的web站点, 这些站点...

    nginx-reverse-proxy-ispconfig:使用Nginx作为反向代理为Apache生成Nginx conf

    它还会在/ var / log / nginx / vhosts / [vHostName]中创建一个包含您的虚拟主机名称的日志目录,其中包含访问和错误日​​志文件。 该脚本是两年前编写的,我没有足够的时间进行重新编写,因此欢迎您提供帮助。 ...

    Nginx 1.22.0 Linux 版本,解压安装。

    在连接高并发的情况下,Nginx是Apache服务不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000 个并发连接数的响应,感谢Nginx为我们选择了 epoll and kqueue作为开发...

    Nginx中虚拟主机与指定访问路径的设置方法讲解

    nginx上虚拟主机的配置其实跟apache上的基本上类似。 需要注意的几点是: 第一、关于.htaccess配置,也就是为静态配置,在nginx上一般你要写在虚拟主机的配置文本中,但是我也有看到用包含文件解决这个问题的,即在...

    Ubuntu权威指南(2/2)

    《Ubuntu权威指南》目录 目 录 第1章 系统概述与安装 1 1.1 Linux的兴起与发展 2 1.2 充分利用网上资源 3 1.2.1 Ubuntu官方网站 3 1.2.2 GNU网站 4 1.2.3 Linux文档项目网站 4 1.2.4 网上求助 5 1.3 随时查询随机...

    mechanic:命令行工具,用于管理节点应用程序的Nginx支持的代理。 静态文件传递,负载平衡,HTTPS,以及带有纯净接口的所有爵士乐

    通常会设置一个或多个在高编号端口上侦听的节点应用程序,并使用nginx虚拟主机和反向代理功能将流量传递到节点。 nginx还可以提供比节点更好的静态文件服务,并且具有经过反复测试的循环负载平衡功能。 我们已经将...

    Ubuntu权威指南(1/2)

    《Ubuntu权威指南》目录 目 录 第1章 系统概述与安装 1 1.1 Linux的兴起与发展 2 1.2 充分利用网上资源 3 1.2.1 Ubuntu官方网站 3 1.2.2 GNU网站 4 1.2.3 Linux文档项目网站 4 1.2.4 网上求助 5 1.3 随时查询随机...

    毕业设计电商网站源码-flask-blog:《FlaskWeb开发》的个人部署版本,包含学习笔记

    刚开始不明白这个nginx有什么用,看了上面的链接的部署过程大概明白了,将外部的请求转发到内部的gunicorn服务器,称为反向代理(Apache类似),一图说明一切: 准备工作 域名:狗爹上面购买: ,有点小贵,然后设置...

Global site tag (gtag.js) - Google Analytics