52AV手機A片王|52AV.ONE
標題:
Apache 如何設定多個虛擬伺服器(Virtual Server)
[打印本頁]
作者:
IT_man
時間:
2014-10-3 10:29
標題:
Apache 如何設定多個虛擬伺服器(Virtual Server)
我的環境是 <Linux CENTOS 6 + Apache + mysql>
〖方法一〗
1. vi /etc/httpd/httpd.conf
4 E' M u; d e% n' ?: B
2. 找到 # VirtualHost example:
其下加入你的virtual server 設定,例如:
#2014/10/02 add
<VirtualHost 192.168.1.12:80> #或 <VirtualHost 127.0.0.1:80> #符號為註解
ServerAdmin root@av4u.com
DocumentRoot /home/coav4u/public_html
ServerName av4u.co
ErrorLog logs/www.av4u.co-error_log
CustomLog logs/www.av4u.co-access_log common
</VirtualHost>
<VirtualHost 192.168.1.12:80>
ServerAdmin root@av4u.com
DocumentRoot /home/coav4u/public_html
ServerName www.av4u.co
ErrorLog logs/www.av4u.co-error_log
CustomLog logs/www.av4u.co-access_log common
</VirtualHost>
複製代碼
可同時指定2個 Domain
name (av4u.com及
www.av4u.com
)到同一個虛擬空間,這個部分似乎比 nginx 設定稍微麻煩一點
: h$ P2 D7 p0 U9 X2 I/ V
3. 重啟 Apache 才生效
, |; L& e& K7 l( R2 i# q3 W
service httpd restart #須以root身分 --->搞定
* O7 R: u+ b$ A$ }/ X
註: service httpd start #啟動
! S/ s, u( O* S5 H
service httpd start #停止
. P* R( x* M+ Q: ~9 ^
〖
方法二
〗
4 q' ~/ i! \# I) I; s
在/etc/httpd/conf.d/新ˋ建一獨立檔(設定一個virtual host)
0 V- F3 K0 q9 f) g
例如:
) {* M* B; |" K- P8 S! {
virtual1.conf
! u2 Q7 S t* c/ ?' c6 l& |
<VirtualHost 192.168.1.12:80> #或 <VirtualHost 127.0.0.1:80> #符號為註解
ServerAdmin root@av4u.com
DocumentRoot /home/coav4u/public_html
ServerName av4u.co
ErrorLog logs/www.av4u.co-error_log
CustomLog logs/www.av4u.co-access_log common
</VirtualHost>
複製代碼
virtual2.conf
. I: i# |: C* {$ X( b$ U3 c
<VirtualHost 192.168.1.12:80>
ServerAdmin root@av4u.com
DocumentRoot /home/coav4u/public_html
ServerName www.av4u.co
ErrorLog logs/www.av4u.co-error_log
CustomLog logs/www.av4u.co-access_log common
</VirtualHost>
複製代碼
存檔然後重啟 httpd
v& C" e' |: R" ~
但是出現 error:
) g8 |5 G1 K3 `6 o' N, Y/ C2 b
[warn] _default_ VirtualHost overlap on port 80, the first has precedence
- g# V! x/ \! a( n9 n, _4 ~
SOL:
$ u; \0 e( ^. e: k4 A
由於 /etc/httpd/conf/httpd.conf 內 NameVirtualHost *:80 而 virtual1.conf及virtual2.conf 內都設定為
<VirtualHost 192.168.1.12:80> 不匹配,正確的設定為:
, n0 j3 F9 E% z3 m
httpd.conf 及
virtual1.conf及virtual2.conf(所有虛擬主機的設定檔)不是都為
*:80 就是都為
192.168.1.12:80 即
( P; ~* A% p2 S- R% e
httpd.conf ===>
NameVirtualHost *:80 ,
virtual1.conf及virtual2.conf ===>
<VirtualHost *:80> 或者
3 v- {. a# ]0 [; u3 P1 ~
httpd.conf ===>
NameVirtualHost 192.168.1.12:80 ,
virtual1.conf及virtual2.conf ===>
<VirtualHost 192.168.1.12:80>
' Q% R2 @: D6 T9 m
8 s* E- ~6 ]3 e& T% b9 k7 c
' o$ o4 W: f) S3 M5 i% U) Z
) r# w \* X/ q/ l
歡迎光臨 52AV手機A片王|52AV.ONE (https://www.52av.one/)
Powered by Discuz! X3.2