PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` 뷮 ȣƮ ϱ - Apache HTTP Server Version 2.4
<-
Apache > HTTP Server > Documentation > Version 2.4 > ȣƮ

뷮 ȣƮ ϱ

ֽ ƴմϴ. ֱٿ ϼ.

ġ 1.3 뷮 ȣƮ ȿ ϴ Ѵ.

Support Apache!

top

httpd.conf <VirtualHost> ǵ ִٸ ⼭ ϴ ̴:

NameVirtualHost 111.22.33.44
<VirtualHost 111.22.33.44>
ServerName www.customer-1.com
DocumentRoot /www/hosts/www.customer-1.com/docs
ScriptAlias /cgi-bin/ /www/hosts/www.customer-1.com/cgi-bin
</VirtualHost>
<VirtualHost 111.22.33.44>
ServerName www.customer-2.com
DocumentRoot /www/hosts/www.customer-2.com/docs
ScriptAlias /cgi-bin/ /www/hosts/www.customer-2.com/cgi-bin
</VirtualHost>
# ٺ ٺ ٺ
<VirtualHost 111.22.33.44>
ServerName www.customer-N.com
DocumentRoot /www/hosts/www.customer-N.com/docs
ScriptAlias /cgi-bin/ /www/hosts/www.customer-N.com/cgi-bin
</VirtualHost>

<VirtualHost> θ óϵ üϴ ̴. ׷ ִ:

  1. ۾ ġ ϰ ޸𸮸 Ѵ.
  2. ȣƮ ߰ϱ Ͻýۿ 丮 DNS ׸ ߰ϱ⸸ ϸȴ. , ġ 缳ϰ ʿ䰡 .

ȣƮ ٸ α ٴ ̴. ׷ ſ ȣƮ Ѵٸ ϱڸ ⶧ ٸ α . fifo α׸ , ޴ α׸ óϿ ( ִ) .

top

ȣƮ IP ּҿ HTTP û Host: Ѵ. ⺻ 뷮 ȣƮ ڵ ȣƮ û ϰο Ѵ. ̴ κ mod_vhost_alias Ͽ ذ , ġ 1.3.6 ϸ Ѵٸ mod_rewrite ؾ Ѵ. ⺻ Ե ʴ´. Ϸ ġ ϰ Ҷ ؾ Ѵ.

ȣƮ Ϲ ȣƮó ̰Ϸ `ӿ' Ѵ. ߿ ġ ڱ URL 鶧 ̴. ServerName þ ϸ, CGI SERVER_NAME ȯ溯 ־. UseCanonicalName ޷ȴ. UseCanonicalName Off̸ û Host: ȴ. UseCanonicalName DNS̸ ȣƮ IP ּҸ DNS ˻Ͽ ˾Ƴ. ڴ ̸ ȣƮ ϰ, ڴ IP ȣƮ Ѵ. Host: ų DNS ˻ Ͽ ġ ˾Ƴ ϸ ServerName Ѵ.

ٸ `' (DocumentRoot ϸ, CGI DOCUMENT_ROOT ȯ溯 ־) Ʈ̴. Ϲ core Ͽ URI شϴ ϸ ã, ȣ Ҷ ٸ (mod_vhost_alias mod_rewrite) ٸ ̷ ۾ Ѵ. DOCUMENT_ROOT ȯ溯 Ƿ CGI SSI Ѵٸ ߸ ִ.

top

ȣƮ

ȣƮ mod_vhost_alias Ͽ Ϲ ߴ.

# Host: ˾Ƴ
UseCanonicalName Off

# ù° ʵ带 Ͽ α׸ ȣƮ ִ
LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon
CustomLog logs/access_log vcommon

# û óϱ ϸ Ѵ
VirtualDocumentRoot /www/hosts/%0/docs
VirtualScriptAlias /www/hosts/%0/cgi-bin

UseCanonicalName Off UseCanonicalName DNS ϱ⸸ ϸ IP ȣƮ ȴ. ȣƮ IP ּҸ ϸ ߰ ִ.

top

ȣƮϴ Ȩ ý

ISP Ȩ ߴ. ϸ www.user.isp.com /home/user/ δ Ϻθ ϸ ִ. cgi-bin ȣƮ ʰ ȣƮ Ѵ.

# ⺻ . ׸

# ϸ Ϻθ Ѵ
VirtualDocumentRoot /www/hosts/%2/docs

# ϳ cgi-bin 丮
ScriptAlias /cgi-bin/ /www/std-cgi/

mod_vhost_alias VirtualDocumentRoot ִ.

top

ȣƮ ý ϱ

ġ Ϲ <VirtualHost> þ Ͽ ȣƮ ִ. , Ȩ IP ּ Ѱ, ٸ IP ּ Ѱ οѴ. ó <VirtualHost> ǿ ִ.

UseCanonicalName Off

LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon

<Directory /www/commercial>
Options FollowSymLinks
AllowOverride All
</Directory>

<Directory /www/homepages>
Options FollowSymLinks
AllowOverride None
</Directory>

<VirtualHost 111.22.33.44>
ServerName www.commercial.isp.com

CustomLog logs/access_log.commercial vcommon

VirtualDocumentRoot /www/commercial/%0/docs
VirtualScriptAlias /www/commercial/%0/cgi-bin
</VirtualHost>

<VirtualHost 111.22.33.45>
ServerName www.homepages.isp.com

CustomLog logs/access_log.homepages vcommon

VirtualDocumentRoot /www/homepages/%0/docs
ScriptAlias /cgi-bin/ /www/std-cgi/
</VirtualHost>

top

ȿ IP ȣƮ

ù° IP ȣƮ ٲ ִٰ ߴ. ׷ û DNS ãƾϹǷ ſ ȿ̴. ̸ IP ּҷ Ͻý ϰ α׸ ϸ ذ ִ. ġ ٷ ʿ䰡 , DNS ˻ ʰ ȴ.

# IP ּҸ DNS ˻Ͽ ˾Ƴ
UseCanonicalName DNS

# α׸ ֵ IP ּҸ Ѵ
LogFormat "%A %h %l %u %t \"%r\" %s %b" vcommon
CustomLog logs/access_log vcommon

# ϸ IP ּҸ Ѵ
VirtualDocumentRootIP /www/hosts/%0/docs
VirtualScriptAliasIP /www/hosts/%0/cgi-bin

top

ġ ϱ

ġ 1.3.6 Ŀ Ե mod_vhost_alias Ѵ. mod_vhost_alias ġ Ѵٸ ̹ ߵ mod_rewrite Ͽ, Host:- ȣƮ, ִ.

α׿ Ͽ ִ. ġ 1.3.6 α þ %V ԵǾ, 1.3.0 - 1.3.3 %v ɼ ߴ. ׷ 1.3.4 ̷ .  ġ .htaccess Ͽ UseCanonicalName þ Ƿ α׿ ̻ ϵ ִ. ׷Ƿ %{Host}i þ Ͽ Host: α׿ ̴. , %V ʴ :port ڿ ߰ ִ.

top

mod_rewrite ȣƮ

ù° ϴ httpd.conf ̴. ó ù° , ȣȯ mod_rewrite Ǿ. ۾ ϴ mod_rewrite Ѵ.

Ư ؾ ִ. ⺻ mod_rewrite (mod_alias ) ٸ URI ȴ. ׷ ٸ URI Ͽ mod_rewrite ؾ Ѵ. , ȣƮ ScriptAlias ؼ Ư ۾ ʿϴ.

# Host: ´
UseCanonicalName Off

# splittable logs
LogFormat "%{Host}i %h %l %u %t \"%r\" %s %b" vcommon
CustomLog logs/access_log vcommon

<Directory /www/hosts>
# ScriptAlias CGI ⶧
# ⿡ ExecCGI Ѵ
Options FollowSymLinks ExecCGI
</Directory>

# κ̴

RewriteEngine On

# Host: ҹڰ ڼ ִ
RewriteMap lowercase int:tolower

## Ϲ óѴ:
# Alias /icons/ ϵ - ٸ alias ؼ ݺ
RewriteCond %{REQUEST_URI} !^/icons/
# CGI ϵ
RewriteCond %{REQUEST_URI} !^/cgi-bin/
# Ư ۾
RewriteRule ^/(.*)$ /www/hosts/${lowercase:%{SERVER_NAME}}/docs/$1

## CGI óѴ - MIME type ؾ Ѵ
RewriteCond %{REQUEST_URI} ^/cgi-bin/
RewriteRule ^/(.*)$ /www/hosts/${lowercase:%{SERVER_NAME}}/cgi-bin/$1 [T=application/x-httpd-cgi]

# !

top

mod_rewrite Ȩ ý

ι° Ѵ.

RewriteEngine on

RewriteMap lowercase int:tolower

# CGI ϵ
RewriteCond %{REQUEST_URI} !^/cgi-bin/

# RewriteRule ϵ ȣƮ ùٸ ˻Ѵ
RewriteCond ${lowercase:%{SERVER_NAME}} ^www\.[a-z-]+\.isp\.com$

# ȣƮ URI տ δ
# [C] ۼ Ѵ
RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]

# ϸ
RewriteRule ^www\.([a-z-]+)\.isp\.com/(.*) /home/$1/$2

# ü CGI 丮 Ѵ
ScriptAlias /cgi-bin/ /www/std-cgi/

top

ȣƮ ϱ

mod_rewrite Ͽ ȣƮ Ʈ ˾Ƴ. ʿϴ.

vhost.map :

www.customer-1.com /www/customers/1
www.customer-2.com /www/customers/2
# ...
www.customer-N.com /www/customers/N

http.conf :

RewriteEngine on

RewriteMap lowercase int:tolower

# Ѵ
RewriteMap vhost txt:/www/conf/vhost.map

# alias óѴ
RewriteCond %{REQUEST_URI} !^/icons/
RewriteCond %{REQUEST_URI} !^/cgi-bin/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
# ã´
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/docs/$1

RewriteCond %{REQUEST_URI} ^/cgi-bin/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/cgi-bin/$1

:  en  |  fr  |  ko  |  tr 

top

Comments

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our mailing lists.