数学建模社区-数学中国

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

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

& z0 H& e4 a) Q- K" E) D. w1 |5 v 5 f& [+ j7 K1 u9 S0 [9 ^. n X4 ?" W" D$ H

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

% \ ~: t8 \& w" r1 j/ S! J. n/ m: ^" t

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

3 H. s" J; b! V

基于IP的方法:

* _0 K$ |+ e0 n* x4 A6 P4 v% D" E

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

- J4 A6 W$ j7 q# ?! O; R$ n

基于主机名的方法:

/ T, w8 z3 n. D1 t# r" z

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

* @0 J5 Q4 [8 K I8 T9 F

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

5 e/ S6 `1 B$ [$ z3 U * t, [+ {) g' y% W) R: V) b

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

1 ~: }2 a z9 R2 G1 ^

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

C. ^7 I- F6 c! i6 E9 _/ u

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

5 L! v( r- _& f6 v; P1 S$ j) F9 f: k# H( u) u % A! R; J% E8 b d/ ` \8 S 9 {# x- _; C/ g' l8 r IIS虚拟主机设置

8 x- i0 ]7 _$ N* b# f* n' I/ O: S2 j+ D1 G

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

( x8 a& ]( F# x a9 Z6 f8 _. u

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

/ o5 E, b* z+ B, }' v: \- [. N

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

" X) ^# e5 @; d% z( S! ~5 }

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

& v8 S1 p9 j" c! ~9 R* Q Z! z

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

5 V0 e: n( s0 p$ N$ j' z3 q& U

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

: t$ d) I8 ?( ]6 R7 {$ @' V

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

. }! f" h4 h% g7 s

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

1 V& Y M8 u2 c) Q. Z1 Y% Z5 i; Q

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

4 L5 c! b* R& n9 A

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

: F8 t' K3 x& j1 P ~( N+ D3 O `/ ^ H

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

2 I: i' a0 L: x0 G6 D1 _ ! c6 U% T+ O2 h# B7 P1 }, ^+ P: o : G m. X- j8 D8 E8 X- V $ Y, Q: N: Q3 a$ n' s gApache虚拟主机设置

* W$ p0 s2 B: m( e0 ]% L . d/ `; C. X+ C

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

4 G1 ]0 k, O/ t3 B

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

% ^0 j# i1 J5 P6 Q' q

<VirtualHost *>/ p' z, ~1 W1 O2 n& l ServerAdmin webmaster@comexe.cn6 `* P" U* u+ C3 x7 s' l0 B& B DocumentRoot /export/home/dns0755 0 i$ `, i; h6 M9 A$ M5 C/ ` ServerName dns0755.net) `* S) S* |3 Y4 r- n k- Z' J) L ServerAlias *.dns0755.net 7 E6 u3 H( N) A3 |6 m4 y- D# C ScriptAlias /cgi-bin/ /export/home/dns0755/cgi-bin/ : B# p& r9 c* v- d# }- O) L: b ErrorLog "| /usr/local/sbin/rotatelogs /var/log/http/dns0755-err.log 604800" " X$ `, j8 n1 q! F CustomLog "| /usr/local/sbin/rotatelogs /var/log/http/dns0755.log 604800" combined . b$ x2 V1 d. E* R </VirtualHost>

7 L% K/ G/ C- L- Z% v! P: u

说明:

: t( m$ e! f7 x9 x1 R$ D

ServerAdmin webmaster@comexe.cn4 [5 P& C, b- h8 Q/ Y: ?) y 站点管理员Email地址

& F; i! b- u0 W- A) `+ k$ \1 b

DocumentRoot /export/home/dns0755/ S R0 g x1 o% H 站点根目录

7 C) g- S/ x; o7 t5 c

ServerName dns0755.net' A! S& R. {% a 站点主机名

, Y% U, {: ?; o! }/ p) { u

ServerAlias *.dns0755.net % {- P: X0 P4 c$ F4 R- J站点别名,“*”表示任意字符

% W. |8 @7 b% j/ G) y8 w

ScriptAlias /cgi-bin/ /export/home/dns0755/cgi-bin/ 9 Y1 U# a. H! j, T& g& k% v执行脚本文件存放路径

. d( v" s G' V% R: a( G3 a

ErrorLog "| /usr/local/sbin/rotatelogs /var/log/http/dns0755-err.log 604800" : A; B. X9 j( M) D错误日志控制

: j0 C/ g/ L5 E7 V- U

CustomLog "| /usr/local/sbin/rotatelogs /var/log/http/dns0755.log 604800" combined2 R, T; B; S) {* N 访问日志

' c, v3 G9 o! _$ C7 o1 f

/usr/local/sbin/rotatelogs是日志管理程序 / b! h) Z0 D/ _9 N9 |/var/log/http/dns0755.log是日志文件名+ I9 q I% p* G8 I; `" F 604800的单位是秒,这种写法表示每隔7天产生一个日志文件

7 B! L6 p( n: q( |1 ?4 J 1 W. H2 K7 d( g7 R 4 ~. R( K' R9 K

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






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