网络安全参考 | UNIX参考 | GPS参考 | 无线参考 | 在线手册 | OSBUG.ORG | SUNNY-NETWORK.COM
天线制作 GPS 地标
网站地图 RSS订阅
高级搜索 收藏本站
Home | 业界动态 | Open source | GNU | Linux | BSD | Solaris | AIX | HP-UX | IRIX | Mac OS X | Minix | Tru64 | SCO UNIX | Network | Security | X-Window | Database | 应用服务 | Programming | 经典著作 | 永远的纪念 | 杂项
 当前位置: Home > Linux > 发行版本 > Debian > 文章  
一台Debian配置上配置多个Web服务
文章来源: Redice li's blog 文章作者: Redice li 发布时间: 2006-08-20   字体: [ ]  
 

  有许多虚拟服务器的提供商可以在一台主机上为多个用户提供Web服务,并且每个Web服务器可以通过不同的域名来访问。在Debian上,我们可以轻松的通过apache2来实现类似的功能。除了进行一些简单的配置外,我们所需要的软件包都使用Debian提供的安装包而不必从源代码来安装。

  有许多种不同的方法可以将Apache配置这样的功能,这里介绍一种通过 NameVirtualHost 来进行配置的方法,这种方法的好处是你不需要在主机上绑定多个不同的IP地址,只需要将不同的域名都指向Web服务器的IP地址即可。

  例如在一台主机IP地址为 222.222.222.222的Web服务器上,希望配置 www.rediceli.com,mail.rediceli.com,services.rediceli.com,只需要在DNS服务器(或DNS提供商的服务器)上将这些域名都指向222.222.222.222即可。当然,还可以是另一些完全不同的域名,如 www.example.com。

  因为我们要在一台机器上提供多个Web服务器,为了不至于引起不必要的混乱,最好将每个服务器的Web根目录,CGI目录和日志目录等完全分开。可以直接在Debian提供的Web目录下构造这些目录,也可以在一个完全不同的目录里构造,如/opt/www目录。例如,可以类似如下的目录结构:

root@debain ~# mkdir /opt/www

root@debain ~# mkdir /opt/www/www.rediceli.com
root@debain ~# mkdir /opt/www/www.rediceli.com/html
root@debain ~# mkdir /opt/www/www.rediceli.com/cgi-bin
root@debain ~# mkdir /opt/www/www.rediceli.com/logs

root@debain ~# mkdir /opt/www/mail.rediceli.com
root@debain ~# mkdir /opt/www/mail.rediceli.com/html
root@debain ~# mkdir /opt/www/mail.rediceli.com/cgi-bin
root@debain ~# mkdir /opt/www/mail.rediceli.com/logs

root@debain ~# mkdir /opt/www/service.rediceli.com
root@debain ~# mkdir /opt/www/service.rediceli.com/html
root@debain ~# mkdir /opt/www/service.rediceli.com/cgi-bin
root@debain ~# mkdir /opt/www/service.rediceli.com/logs

  上面的过程,我们分别为三个域名创建了Web服务器所需的目录。下一步,我们应该在apache的配置中开启虚拟主机(Virtual hosts)的功能。简单的方法是创建一个配置文件 /etc/apache2/conf.d/virtual.conf,文件的内容如下:

#
# We're running multiple virtual hosts.
#
NameVirtualHost *

  完成上面的工作后,我们可以开始为每个域名建立一个独立的配置文件。Apache2的站点配置包括两个目录:

  • /etc/apache2/sites-available 这个目录包含一些可用的站点配置文件,但这些并不一定生效。
  • /etc/apache2/sites-enabled 这个目录内的配置为已经生效的站点的配置。

  apache2启动时,sites-enabled目录的内容将被读取并生效,而sites-available目录的内容则不会理会。通常Debian的作法是,将所有的站点配置文件都放在sites-available中,而将需要生效的配置通过软链放置到sites-enabled中。我们配置时也会将所有的配置都放置到sites-available目录中,然后在sites-enabled中创建指向相应配置的链接。Debian有一些工具a2ensite和a2dissite来辅助我们完成允许和禁用站点的功能,这样,我们只需要在sites-available目录中创建相应的配置,再执行相应的命令,即可使这些配置生效或禁用。

  下面我们开始为 www.rediceli.com 创建配置文件,创建文件 /etc/apache2/sites-available/www.rediceli.com,包含下面的内容:

#
# www.rediceli.com (/etc/apache2/sites-available/www.rediceli.com)
#
<VirtualHost *>
ServerAdmin webmaster@rediceli.com
ServerName www.rediceli.com
ServerAlias rediceli.com

# Indexes + Directory Root.
DirectoryIndex index.html
DocumentRoot /opt/www/www.rediceli.com/html/

# CGI Directory
ScriptAlias /cgi-bin/ /opt/www/www.rediceli.com/cgi-bin/
<Location /cgi-bin>
Options +ExecCGI
</Location>

# Logfiles
ErrorLog /opt/www/www.rediceli.com/logs/error.log
CustomLog /opt/www/www.rediceli.com/logs/access.log combined
</VirtualHost>

 
推荐文章
·通过im-switch切换输入法引擎
·用ndiswrapper驱动无线网卡
·在Debian上安装Oracle Database
·Debian与《玩具总动员》
 

 
共2页: 上一页 1 [2] 下一页
↑返回顶部   打印本页   关闭窗口↓  

Google
 
Web oldhand.org unixreference.net meshmea.org
相关分类
热点文章
·用ndiswrapper驱动无线
·通过im-switch切换输入
·通过网络安装Debian Lin
·一个 Debian bittorrent
·在Debian上安装Oracle D
·通过debootstrap安装Deb
·Debian与《玩具总动员》
相关文章
·通过debootstrap安装Deb
·通过网络安装Debian Lin
·在Debian上安装Oracle D
·通过im-switch切换输入
·红帽Linux平台:虚拟化
更多...
 
 

Copyright(c) 2001-2009 OLDHAND ORGANIZATION, All Rights reserved.
Power by DedeCms 织梦内容管理系统