|
tid=1&我的環境是 <Linux CENTOS 6 + Apache + mysql> 〖方法一〗 1. vi /etc/httpd/httpd.conf/ M& y5 e5 k/ P5 z7 O$ y) `
2. 找到 # VirtualHost example:
I8 i9 [5 X: k# _0 K t- 其下加入你的virtual server 設定,例如:1 ?1 b& t! N: ^
- #2014/10/02 add. }. n G0 v, V7 a7 s: Q _ K
- <VirtualHost 192.168.1.12:80> #或 <VirtualHost 127.0.0.1:80> #符號為註解
R" S1 s& x0 _: q/ | - ServerAdmin root@av4u.com; I& x% N# v/ M# n! {
- DocumentRoot /home/coav4u/public_html
) x1 x- N; v* [# n8 k5 u L7 L - ServerName av4u.co" A; A2 i4 \" d
- ErrorLog logs/www.av4u.co-error_log
1 ~% X9 E1 w# k" ]. f - CustomLog logs/www.av4u.co-access_log common# b1 _; \; @5 M4 U8 [* w; o2 f
- </VirtualHost>0 {2 b) G; n4 n) t+ S
- <VirtualHost 192.168.1.12:80>
" @2 j& D$ r6 k0 f) [ - ServerAdmin root@av4u.com
. D/ U7 q. c6 G0 c& H6 T - DocumentRoot /home/coav4u/public_html9 Y5 C# [. i# \# ~; Y
- ServerName www.av4u.co: b) h( r( ]( I( w
- ErrorLog logs/www.av4u.co-error_log
$ U1 j$ t8 f" E7 e; k - CustomLog logs/www.av4u.co-access_log common
7 M' @8 }* [0 H/ S/ v# W' B1 A - </VirtualHost>
複製代碼 可同時指定2個 Domain name (av4u.com及www.av4u.com)到同一個虛擬空間,這個部分似乎比 nginx 設定稍微麻煩一點, ~; f" z/ n; {2 B
3. 重啟 Apache 才生效 B: S$ O7 I5 V3 D) U+ ]
service httpd restart #須以root身分 --->搞定
8 u) \3 B; Z; i 註: service httpd start #啟動
6 L- a Y: B' H0 j# } service httpd start #停止/ J) y' {" s8 J
〖方法二〗$ Y. a6 k3 U! {
在/etc/httpd/conf.d/新ˋ建一獨立檔(設定一個virtual host)
6 H- k7 Q2 B& E/ F# t例如:
+ P, m! s5 P3 n& R! Svirtual1.conf( \% _5 o/ ]7 q% S) u- Q# S( v* E
- <VirtualHost 192.168.1.12:80> #或 <VirtualHost 127.0.0.1:80> #符號為註解, K' `4 r" x0 I* V; Z; e3 [
- ServerAdmin root@av4u.com
5 v' v% @+ ^5 b) n4 D - DocumentRoot /home/coav4u/public_html) }5 |/ N% T' w3 A% E! f9 s
- ServerName av4u.co
3 }) b4 k, |; \$ B4 m8 Q - ErrorLog logs/www.av4u.co-error_log
! R/ r+ [8 v9 N( ^ - CustomLog logs/www.av4u.co-access_log common/ e U2 S1 w8 l+ L! s5 p
- </VirtualHost>
複製代碼 virtual2.conf
& @3 m/ B' v0 B$ C( w$ Z8 Y8 {0 a- <VirtualHost 192.168.1.12:80># X% _) ?- g) |, D: d2 h* A6 g
- ServerAdmin root@av4u.com& ^/ G2 t( \' L2 s: N2 P
- DocumentRoot /home/coav4u/public_html
% r; _- y- Y4 |! L - ServerName www.av4u.co' R, l q, T6 y5 g1 w
- ErrorLog logs/www.av4u.co-error_log3 [' \( v! q, v( m
- CustomLog logs/www.av4u.co-access_log common4 V7 Q3 D8 p; i5 V: u$ Y
- </VirtualHost>
複製代碼 存檔然後重啟 httpd
9 l+ q7 U# o5 T但是出現 error:
' A4 x0 A& j$ E [warn] _default_ VirtualHost overlap on port 80, the first has precedence
, g% ?: u7 t3 b9 q: d. z% iSOL:
7 M+ R6 {2 }5 d# v由於 /etc/httpd/conf/httpd.conf 內 NameVirtualHost *:80 而 virtual1.conf及virtual2.conf 內都設定為 <VirtualHost 192.168.1.12:80> 不匹配,正確的設定為:9 l' y* n7 N3 [$ \( E! z2 k
httpd.conf 及 virtual1.conf及virtual2.conf(所有虛擬主機的設定檔)不是都為 *:80 就是都為 192.168.1.12:80 即
% V" |8 u3 S" Ghttpd.conf ===> NameVirtualHost *:80 , virtual1.conf及virtual2.conf ===> <VirtualHost *:80> 或者
( M" r) Y/ ~+ P p% Vhttpd.conf ===> NameVirtualHost 192.168.1.12:80 , virtual1.conf及virtual2.conf ===> <VirtualHost 192.168.1.12:80>/ y d% h* Z) H6 n% y
. u6 @4 N8 {6 O. Q! F6 ?# S0 @
! Z8 R5 M! ?6 O3 V
& _- ]" J% ?7 K7 H. n# Y |