tid=1&我的環境是 <Linux CENTOS 6 + Apache + mysql> 〖方法一〗 1. vi /etc/httpd/httpd.conf
& j: _$ n/ _6 [2. 找到 # VirtualHost example:! h8 O% r. @( ?& G
- 其下加入你的virtual server 設定,例如:
& @+ S7 }1 J, M& }% E+ k - #2014/10/02 add
8 F4 L$ I, D$ H! t - <VirtualHost 192.168.1.12:80> #或 <VirtualHost 127.0.0.1:80> #符號為註解' W4 f: s. O2 K8 Z2 u% U: r
- ServerAdmin root@av4u.com
2 K8 e, D4 V5 Z/ g5 B - DocumentRoot /home/coav4u/public_html
- ~& s4 j! M" [/ W. N - ServerName av4u.co6 ]. q( E# o4 u& e& d2 z
- ErrorLog logs/www.av4u.co-error_log
/ A/ F8 l% l' w" m2 j/ j' L - CustomLog logs/www.av4u.co-access_log common. c; R- [- ]7 C' e j3 y
- </VirtualHost>
% Z. o% r' H7 f6 E8 F; q* X) | - <VirtualHost 192.168.1.12:80>% b o( u+ u0 h- x
- ServerAdmin root@av4u.com
0 z' v3 E0 ^, J: P - DocumentRoot /home/coav4u/public_html6 @( s4 o0 ?$ W" e2 _7 E: @7 e
- ServerName www.av4u.co7 B# V9 |: A" g) @' u
- ErrorLog logs/www.av4u.co-error_log& J7 a, T0 J3 ^
- CustomLog logs/www.av4u.co-access_log common
4 S" ]1 E. M n* @* t) G) _ - </VirtualHost>
複製代碼 可同時指定2個 Domain name (av4u.com及www.av4u.com)到同一個虛擬空間,這個部分似乎比 nginx 設定稍微麻煩一點5 R' U2 |4 _$ e+ _$ a3 _( D3 b
3. 重啟 Apache 才生效- o$ l5 F7 t; J
service httpd restart #須以root身分 --->搞定: D1 O8 d s# v. d
註: service httpd start #啟動 1 q# E) t- }* M* V7 V
service httpd start #停止
) U8 ^3 h' R- |5 A6 ]$ @3 H〖方法二〗
: n1 m6 o5 \# p1 J8 [& r2 B在/etc/httpd/conf.d/新ˋ建一獨立檔(設定一個virtual host)/ f9 p }9 s( T9 t; L; E4 `( q4 L
例如: ( ^' Z/ C2 b' N* W0 [
virtual1.conf6 [; t! b7 L9 R, }
- <VirtualHost 192.168.1.12:80> #或 <VirtualHost 127.0.0.1:80> #符號為註解1 N* b# Y t' C
- ServerAdmin root@av4u.com) V7 k" A" D" m1 o3 ]
- DocumentRoot /home/coav4u/public_html
& g; {: t& ?* ^, V. {; U- r' z5 P# J+ s - ServerName av4u.co
8 {, ?8 {4 b( |4 |8 `) ` - ErrorLog logs/www.av4u.co-error_log
* F" T( b3 j; P - CustomLog logs/www.av4u.co-access_log common: b+ V1 k% h' h* F* z0 v
- </VirtualHost>
複製代碼 virtual2.conf7 K B' F% A. V
- <VirtualHost 192.168.1.12:80>8 R0 n+ d) |9 R s) ] w3 [( K
- ServerAdmin root@av4u.com
( D. W2 J. g' X( V6 M( u - DocumentRoot /home/coav4u/public_html
/ v5 Q1 m+ D, s* E2 N - ServerName www.av4u.co* }. \0 c6 @5 G/ S+ {( X, U7 d
- ErrorLog logs/www.av4u.co-error_log
- Z& w- s- G- l% ~' l8 H0 Z7 N - CustomLog logs/www.av4u.co-access_log common
4 t$ u, |+ a! l8 b' f8 S; y% @3 q - </VirtualHost>
複製代碼 存檔然後重啟 httpd
2 K: a6 ?: F U9 F6 W. v但是出現 error:! @1 [# V5 g% D8 B( X2 J% ^! E
[warn] _default_ VirtualHost overlap on port 80, the first has precedence# H. M& u/ y2 h, g7 r
SOL:
( a0 C; t+ z: l( @由於 /etc/httpd/conf/httpd.conf 內 NameVirtualHost *:80 而 virtual1.conf及virtual2.conf 內都設定為 <VirtualHost 192.168.1.12:80> 不匹配,正確的設定為:" U4 X5 S9 `' }( E7 k/ H8 q
httpd.conf 及 virtual1.conf及virtual2.conf(所有虛擬主機的設定檔)不是都為 *:80 就是都為 192.168.1.12:80 即9 P) F2 t3 ~2 _* G( Y* x
httpd.conf ===> NameVirtualHost *:80 , virtual1.conf及virtual2.conf ===> <VirtualHost *:80> 或者 : C }& e6 I3 O5 {% @
httpd.conf ===> NameVirtualHost 192.168.1.12:80 , virtual1.conf及virtual2.conf ===> <VirtualHost 192.168.1.12:80>) I; H1 L* o" _8 R! d0 F
* M' G$ A! A: v* M C# d$ \2 C( S6 ~% J+ z: L9 m
6 O$ B: K9 d8 b" z4 u# V& I
|