数学建模社区-数学中国

标题: 虚拟主机设置 [打印本页]

作者: 韩冰    时间: 2004-10-3 20:47
标题: 虚拟主机设置
虚拟主机原理

7 P" D( E% L% n' C1 ^$ P% U- @5 J 5 f2 J! A( H! }# |1 V2 Z/ C : y* N) I: E8 E) O7 @/ t$ s

虚拟主机是指在一台服务器里运行几个网站、提供WEB、FTP、Mail等服务。本文主要介绍WEB服务的虚拟主机设置。

/ @& s% k( d) C0 e9 C' i' D n

虚拟主机有两种实现方法:基于IP的方法和基于主机名的方法。

6 \6 l+ ^/ l) s7 {9 v

基于IP的方法:

- z a8 P3 @4 `

首先,在服务器里绑定多个IP,然后配置WEB服务器,把多个网站绑定在不同的IP上。访问不同的IP,就看到不同的网站。

( N+ c8 y' r" t& T0 s2 G

基于主机名的方法:

; L* D) Z: W& x! C3 `

首先,设置多个域名的A记录,使它们解析到同一个IP地址上,即同一个服务器上。然后,在服务器上配置WEB服务端,添加多个网站,为每个网站设定一个主机名。因为HTTP协议访问请求里包含有主机名信息,当WEB服务器收到访问请求时,就可以根据不同的主机名来访问不同的网站。

6 p1 H: w, {$ D, Y- L& l

基本IP的方法在局域网中比较常用,基于主机名的方法在Internet中比较常用。下面以两个最常用的WEB服务器IIS和Apache为例,介绍基于主机名的虚拟主机的设置方法。

" t r: s. \+ M7 Z% |; x) I: t 1 c9 @& E! B$ P9 }+ T5 u- D

设置虚拟主机的主要步骤:

0 V4 c' }: c& L3 H3 R4 [ h1 L

1、在动态域名客户端软件里添加多个域名。这一步的目的,是让这些域名都解析到同一个服务器上。(注:公网客户端和内网专业版TrueHost客户端可添加多个域名,内网标准版不支持多域名)。

* |1 q( d, l8 p% C8 x* y* @3 v

2、在用户机器的WEB服务器(IIS、Apache等)上添加域名配置虚拟主机。

" n# y4 r' m1 z ( h# H1 O# ^" N1 S9 ` # U) p' L0 ]4 C2 h0 E! E& j9 Q6 E- Q7 x# Q2 h5 Z# V; J IIS虚拟主机设置

" t4 ?' i; J! j! m / x8 f5 A9 ^" b

1、打开“控制面板”->“管理工具”->“Internet服务管理器”->“默认web站点”。

6 I5 e% ]- T6 O% b7 ^# x* H

2、在“默认web站点”上按鼠标右键,选择“新建”->“站点”。按“下一步”。

% k: Z$ i) t9 n# l( E

3、输入站点说明,如“站点1”。按“下一步”。

& g x& D1 s7 B. E: h" |" Q5 ?1 X. W

4、在“站点的主机头”上输入域名,如“abc.dns0755.net”。按“下一步”。

9 j K4 \! F9 G' z

5、在路径里指定站点的根目录路径。按“下一步”。

. a6 Q: Z( m3 n

6、在权限里选择适当的权限。按“下一步”,即可完成。

3 O3 M# A- G0 d3 x7 k3 f- C

如果配置的是顶级域名的虚拟主机,例如在上面第4步主机头里输入“abc.com”,而同时又希望用户使用“www.abc.com”也能访问。设置步骤如下:

; {3 h! c3 J' S6 _; O

1、在“Internet服务管理器”的“站点1”上按鼠标右键,选择“属性”。

1 m L( S# U2 s# u; b0 \

2、在IP地址右边点击“高级”。

+ P F4 y3 t7 N: _5 _, T9 G

3、点击“添加”,输入端口号(一般用80),再输入主机头名“www.abc.com”。

1 [7 S" j6 {9 ?/ }+ P0 A' y ( e5 ^$ m, |/ S! ]; h5 m

如果有多个站点要添加,请重复执行上面的步骤。

# D$ O5 F) F- p7 R9 b6 \% Y6 b" H$ A& p ' X# Y/ U( ?) K/ d9 H' H! b 5 n) o, W! `9 ^. Q9 MApache虚拟主机设置

7 |/ G: u* O0 A4 l : `3 }/ P2 t% D0 v

1、打开Apache配置文件“httpd.conf”,查找“#NameVirtualHost *”,把这行前面的“#”去掉。

5 a" r: f6 N2 {- g) W. a( f- u1 M1 R

2、在“NameVirtualHost *”这行下面,增加虚拟主机站点。示例如下:

6 X5 K- n# ^% |; i+ x. k: N! M" n

<VirtualHost *>2 S) G. L; P( m ServerAdmin webmaster@comexe.cn% n: ^6 U, U0 `% i: u3 t6 K DocumentRoot /export/home/dns0755! Y1 s7 f6 m- M( L8 _ ServerName dns0755.net . u* B, W# q5 r- ]% H1 x2 D/ B ServerAlias *.dns0755.net 0 e' m5 p* t4 f/ \ ScriptAlias /cgi-bin/ /export/home/dns0755/cgi-bin/6 Z# F5 w3 A- i* d; j$ ] ErrorLog "| /usr/local/sbin/rotatelogs /var/log/http/dns0755-err.log 604800") n( J% j* L/ r3 p0 |) V/ ? CustomLog "| /usr/local/sbin/rotatelogs /var/log/http/dns0755.log 604800" combined: E; l5 |2 m6 E; m5 U2 N: w </VirtualHost>

8 B8 q0 p- |8 k& a# h, z. Z; k1 t

说明:

! y- Z/ q+ ?! a, x

ServerAdmin webmaster@comexe.cn/ Z# x: b: S; `' s5 z( i 站点管理员Email地址

% y. s# y- V D1 O7 v- K I

DocumentRoot /export/home/dns0755 * Q9 t5 I0 m) R6 ?站点根目录

# Z# v6 V! p4 a6 `( c% J5 h

ServerName dns0755.net 6 s1 N, B; z- {1 C2 d1 W' ~' `站点主机名

8 B6 m p% q- k) m9 d# @. R

ServerAlias *.dns0755.net . @* y7 R. ~3 N4 L- G站点别名,“*”表示任意字符

' Z4 z, U [% V

ScriptAlias /cgi-bin/ /export/home/dns0755/cgi-bin/& J) V* a" {% X' y$ z% Z* ^ 执行脚本文件存放路径

- {. M- Y! ^( L# ?' Z( l

ErrorLog "| /usr/local/sbin/rotatelogs /var/log/http/dns0755-err.log 604800": [( ?4 ]- x* b1 h 错误日志控制

- O$ j! ~4 @$ m

CustomLog "| /usr/local/sbin/rotatelogs /var/log/http/dns0755.log 604800" combined( |# x9 R2 I6 I% Q 访问日志

0 I3 I& W# v' E9 a

/usr/local/sbin/rotatelogs是日志管理程序 . {: X7 _1 p* q! ]( t# |' ]8 |4 b/var/log/http/dns0755.log是日志文件名% z4 j, W. A0 ] 604800的单位是秒,这种写法表示每隔7天产生一个日志文件

4 v- v" C6 O3 I0 Q1 k- z% K 2 { Y* f& c, J( F 9 k2 |5 W$ G5 w- |9 l% j

如果有多个站点要添加,请重复执行第2步操作。






欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5