apache 2.0 ³]©wÀÉhttpd.conf

1.Global Environment ¥þ°ìÀô¹Ò
2.'Main' server configuration ²ÕºA¥D¦øªA¾¹
3.Virtual Hosts µêÀÀ¥D¾÷

1.Global Environment ¥þ°ìÀô¹Ò

ServerRoot

#Apache ¦øªA¾¹©ñ¸mªº¦a¤è¡C¥]§t³]¸m¤å¥ó¡B¿ù»~¤å¥ó¡B°O¿ý¤å¥ó......¡C

PidFile

#³]©w¦æµ{ ID(Process ID) ªºÀɮ׸ô®|¡C

ScoreBoardFile

#Apache ¦æµ{¤§¶¡¥Î¨Ó¥æ´«°õ¦æ®É´Áª¬ºA¸ê°TªºÀɮ׸ô®|¡C

Timeout

#·í¨Ï¥ÎªÌ´£¥X³s½u­n¨D¡A¦øªA¾¹·|µ¥«Ý Timeout «ü¥O³]©wªº¬í¼Æ¡A­Y¶W¹L Timeout ©Ò³]©wªº¶Ç°e©Î±µ¦¬ªº®É¶¡¡A³o­Ó³s½u´N·|¤¤Â_¡A¹w³] Timeout ¬O 300 ¬í¡C

KeepAlive

#¨M©wTCP³sµ²¬O§_Äò¥Î¡C

MaxKeepAliveRequests

#¤¹³\«ùÄò³s±µªº¼Æ¶q¡A0ªí¥ÜµL­­¨î¡C¼Æ¦r¶V¤j®Ä¯à¶V°ª¡C

KeepAliveTimeout

#µ¥«Ý¤U¤@­Ó½Ð¨Dªñ¨Óªº¶¡¹j®É¶¡¡C

<IfModule>

 

µù¡GMPMªº²ÕºA¡AMPM¬°¦h¦æµ{¼Ò²Õ (Multiprocessing modules) ¡C

Listen

#«ü©wapacheªº³s±µ°ð¡C

LoadModule

#¸ü¤J°ÊºA¼Ò²Õ¡C

¡E mod_access
¡@¡@ ¥H¥D¾÷¦WºÙ©Î IP ¦ì§}¨Ó±±¨î¦s¨ú¡C
¡E mod_actions
¡@¡@ ¥HÀɮתº MIME §ÎºA©Î»Ý¨D¤èªk¨Ó±ø¥ó¦¡°õ¦æ CGI µ{¦¡¡C
¡E mod_alias
¡@¡@ ¤¹³\¸g¹Lºô¯¸¦øªA¾¹¨ÓÂà¦V©Î¬M¹ï³¡¥÷ªº¹êÅéÀɮרt²Î¨ìÅÞ¿è¹êÅé¡C
¡E mod_asis
¡@¡@ ÅýÀɮׯà°÷³QÂà´«¦Ó¤£¥Î¼W¥[¥ô¦óªº HTTP ¼ÐÀY¡C
¡E mod_auth
¡@¡@ µ²¦X»{ÃÒ©M±ÂÅv¡C¥H¨Ï¥ÎªÌ¦WºÙ©M±K½X¨Ó±±¨î¦s¨ú¡C±K½X¥[±K¨Ï¥Î crypt( ) ¨t²Î©I¥s¡C
¡E mod_auth_anon
¡@¡@ ´N¹³°Î¦Wµn¿ý FTP ¦øªA¾¹¡A³o­Ó¼Ò²ÕÅý¨Ï¥ÎªÌ¯à°÷¥H¥Lªº e-amil ·í§@±K½X¨Ó¦s¨ú¤w±ÂÅvªº°Ï°ì¡C
¡E mod_auth_dbm
¡@¡@ ¥H¨Ï¥ÎªÌ¦WºÙ©M±K½X¨Ó±±¨î¦s¨ú¡C³o­Ó¸ê°T¥Î¥[±Kªº±K½X¨Ó¦s©ñ¨ì DBM ¸ê®Æ®w¡C
¡E mod_auth_digest
¡@¡@ ¨Ï¥Î MD5 ªº±ÂÅv¡C
¡E mod_autoindex
¡@¡@ ¦Û°Ê¹ê§@²£¥Í¥Ø¿ý¯Á¤Þ¡C
¡E mod_cache
¡@¡@ ±±¨î URLs ªº§Ö¨ú¤º®e¡C
¡E mod_cgi
¡@¡@ ±±¨î¥Ñ CGI µ{¦¡¨Ó¤ÀªR»yªkªºÀÉ®×°õ¦æ¡C
¡E mod_dir
¡@¡@ °²¦p¨S¦³©ú½TªºÀɮצWºÙ¦b URL( ¸ê·½©w§} ) ¤¤³Q¿ï¨ú¡A³]©wÀɮתº¦Cªí±N·|³Q¥Î¨ì¡C
¡E mod_env
¡@¡@ ±±¨î¶Ç°e¨ì CGI µ{¦¡ªºÀô¹ÒÅܼơC
¡E mod_example
¡@¡@ »¡©ú¦øªA¾¹¦p¦ó³B²z¼Ò²Õ°Ñ¦Ò¡C
¡E mod_expires
¡@¡@ ¨Ï¥Î¦³®É¶¡­­¨îªº HTTP ¼ÐÀY¨Ó¹ê§@§Ö¨ú¤å¥óªº­­¨î®É¶¡¡C
¡E mod_headers
¡@¡@ ¥i¥H«Ø¥ß©Î²£¥Í¤@¯ëªº HTTP ¼ÐÀY¡C
¡E mod_imap
¡@¡@ ±±¨î¥Ñ imap ³B²z¨ç¼Æ¤ÀªRªº½u¤W¹Ï§ÎÀÉ¡C
¡E mod_include
¡@¡@ ¹ê§@¦øªA¾¹ºÝªº HTML ¥]§t¤å¥ó (SSI) ¡C
¡E mod_info
¡@¡@ ´£¨Ñ¦øªA¾¹²ÕºAªº¸Ô²Ó¸ê°T¡A³o¨Ç¸ê°T¥]§t©Ò¸ü¤Jªº¼Ò²Õ©M¥Ø«e©Ò³]©wªº©Ò¦³¦øªA¾¹²ÕºA«ü¥O¡C
¡E mod_log_config
¡@¡@ ¦b°O¿ýÀÉùØ­±¥]§t¤@¯ë®æ¦¡ªº¸ê°T¡C
¡E mod_mime
¡@¡@ ¥H¥ý«e©w¸qªº¼Æ­È¨Ó§ïÅܤå¥óªº³B²z¡C
¡E mod_mime_magic
¡@¡@ ´N¹³ Unix Àɮתº«ü¥O¡A mod_mime_magic ¼Ò²Õ¸ÕµÛ¨M©wÀɮתº MIME §ÎºA¡C
¡E mod_negotiation
¡@¡@¥H¤å¥ó¥[±K¡B»y¨¥¤º®e¡B¤º®eªø«×©M HTTP ¼ÐÀYÄæ¦ì¨Ó±ø¥óªºÅã¥Ü¤å¥ó¡C
¡E mod_proxy
¡@¡@¹ê§@ HTTP1.1proxy/gateway ¦øªA¾¹
¡E mod_rewrite
¡@¡@´£¨Ñ¼u©Ê©M¥i¥H©µ¦ùªº¤èªk¨ÓÂà¦V¨Ï¥ÎªÌºÝªº½Ð¨D¡A¦Ó¥B¦bÀɮרt²Î¤¤¹ïÀ³¶i¨Óªº URL( ¸ê·½©w §} ) ¨ì¨ä¥¦¦ì¸m¡C
¡E mod_setenvif
¡@¡@¥H¦UºØ HTTP ¼ÐÀYÄæ¦ìªº¤º®e¨Ó±ø¥ó¦¡ªº³]©wÀô¹ÒÅܼơC
¡E mod_so
¡@¡@°ÊºA¸ü¤Jªº«ü¥O¥²»ÝÀRºAªº½sĶ¨ì³o¦øªA¾¹¤W¡C
¡E mod_speling
¡@¡@¸ÕµÛ¥h­×¥¿¿ù»~ªººô¯¸¦ì§}«÷¦r¡C
¡E mod_ssl
¡@¡@¨Ï¥Î SSL ©M TLS ¨Ó¥[±K¡C
¡E mod_status
¡@¡@´£¨Ñ HTTP ¦øªA¾¹¦æµ{ CPU ©MÀW¼eªº¨Ï¥Î»¡©ú¡C
¡E mod_suexec
¡@¡@Åý CGI µ{¦¡¥u¯àÅý±ÂÅvªº¨Ï¥ÎªÌ©Î¸s²Õ¨Ï¥Î¡C
¡E mod_unique_id
¡@¡@¤À°tÅv§úµ¹¨C¤@¦ì­n¨DªA°Èªº¨Ï¥ÎªÌ¡C
¡E mod_userdir
¡@¡@«ü©w­Ó§O¨Ï¥ÎªÌºô­¶¤å¥óªº¦ì¸m¡C
¡E mod_usertrack
¡@¡@¨Ï¥Î cookie ¨Ó°lÂܨϥΪ̦bºô¯¸ªº¹Lµ{¡C
¡E mod_vhost_alias
¡@¡@¥]§t¤ä´©°ÊºAªº¦w¸Ë¤j¶qªºµêÀÀ¥D¾÷¡C

2.'Main' server configuration ²ÕºA¥D¦øªA¾¹

ServerAdmin

#³]©w APACHE ªººÞ²zªÌ E-mail «H½c¦ì§}¡C

ServerName

#³]©w APACHE ¦øªA¾¹¦WºÙ¡A­Y¨S¦³ºô§}¥i¦b³oùØ¥i¥´¤W IP¡C

UseCanonicalName

#¨M©w Apache ¦p¦ó«Ø¥ß°Ñ¦Ò¦Û¤vªº URLs ¡B¦øªA¾¹¦WºÙ©M³s±µ°ðÅܼơC·í³]©w¬° Off ®É¡A Apache ±N¨Ï¥Î¨Ï¥ÎªÌ¿é¤Jªº¥D¾÷¦WºÙ©M³s±µ°ð¡A·í³]©w¬° On ®É¡AApache ±N¨Ï¥Î ServerName «ü¥O©Ò«ü©wªº¦WºÙ¡C

DocumentRoot

#³]©w APACHE ¦øªA¾¹¦s©ñºô¯¸ºô­¶ªº®Ú¥Ø¿ý¡C

<Directory>

#<Directory>...... </Diretory>¹ï³o­Ó¥Ø¿ý¤Î¨ä¤l¥Ø¿ýªº³]©w¡A¥i¥Î«ü¥Ooptions¡BAllowOverride¡Bdeny¡Ballow»Porder ¡C

Options

# ³]©w¯S©w¥Ø¿ýªº²ÕºA¯S¼x¡C

None Ãö³¬©Ò¦³¿ï¶µ¡C
All ¶}±Ò©Ò¦³¿ï¶µ¡AMultiViews°£¥~¡C
ExecCGI ¤¹³\CGI©R¥O½Zªº°õ¦æ¡C
FollowSymLinks ¦øªA¾¹·|°l´M¥Ø¿ý¤Uªº²Å¸¹³sµ²Ãö«Y¡C
Include ¤¹³\SSI«ü¥Oªº°õ¦æ¡C
IncludeNOEXEC ¤¹³\ ssi ¥\¯à¡A¦ý¤£¥]¬A #exec ©M #include ¤¸¯À¡C
indexes ¦øªA¾¹¥i¥H²£¥Í¦¹¥Ø¿ý¤¤ªºÀɮצCªí¡C
SymlinksIFOwnerMatch °²¦p¥Ø¼Ð©M³sµ²ªº¾Ö¦³ªÌ³£¬Û¦P¡A«h¶}©l²Å¸¹³sµ²¡C
MultiViews ¤¹³\¥H¤º®eÀɮתº½d¥»´M§ä¡C

AllowOverride

#³]©w.htaccessÀɮתº«ü¥O¥i§_Âмg²ÕºAÀɪº©w¸q

None ©¿²¤³X°Ý±±¨î¤å¥ó(.htaccess)ªº³]¸m¡C
All ±±¨î¤å¥ó(.htaccess)¥i¥HÂл\¨t²Î°t¸m¡C
AuthConfig ±Ò°Ê±ÂÅv¬ÛÃö«ü¥O (AuthName,AuthType,AuthUserFile,AuthGroupFile,Require)
Indexes ±Ò°Ê¥Ø¿ýªºÀɮצCªí«ü¥O¡C (FancyIndexing,DirectoryIndex,IndexOptions,IndexIgnore)
Options ±Ò°Ê Options «ü¥O¡C
Limit ±Ò°Ê«ü¥O±±¨î¥D¾÷¦s¨ú (Allow,Deny,Order)
FileInfo ±Ò°Ê MIME Àɮ׬ÛÃö«ü¥O (AddType,AddEncoding,AddLanguage,LanguagePriority)

Order

#³]©wAllow¸òDenyªº¶¶§Ç¡C

Allow

#³]©w¤¹³\¦s¨úªº¹ï¶H¡C

All allow from all
¥þºô°ì¦WºÙ allow from www.ncu.edu.tw
³¡¥÷ºô°ì¦WºÙ allow from .ncu.edu.tw
§¹¾ãIP allow from 140.115.65.1
³¡¤ÀIP allow from 140.115
ºô¸ô¦ì§}/ºô¸ô¾B¸n°t¹ï allow from 140.115.204.0/255.255.255.0
ºô¸ô¦ì¸m/nnnCIDR³W®æ allow 140.115.204.0/24

Deny

#³]©w¤£¯à¦s¨úªº¹ï¶H¡A¾A¥Î¤Wªí¡C

UserDir

#³]©w¥Î¤áªººô­¶¥Ø¿ý¡A¦pªG¤£·Q¬°¥¿¦¡ªº¥Î¤á´£¨Ñºô­¶ªA°È¡A¨Ï¥ÎDISABLED§@UserDirªº°Ñ¼Æ§Y¥i¡C

DirectoryIndex

#·í§Ú­Ì¿é¤J¸Ó¥Ø¿ýªº¸ô®|®É¡A DirectoryIndex «ü¥O´N·|«ü©w¸Ó¯Á¤ÞÀɨӦ^À³¡C

AccessFileName

#³]©w¥Ø¿ý¨C­Ó¥Ø¿ýªº²ÕºA¡A¹w³]¬O.htaccess¡C


.htaccess ªº¥Îªk
¥ý§â .htaccess ©ñ¦b­n¥Îªº¥Ø¿ý¤º(windows ¤£¯àª½±µ§ïÀɦW¡A¥i¥H¥Î°O¨Æ¥»¦sÀɮɦs¦¨.htaccess)
1. ±K½X«OÅ@
.htaccess ¤º¼g¤W:
AuthName "testing"
AuthType Basic
AuthUserFile "C:/Apache/htdocs/testing/.htpasswd"
require valid-user
AuthName ¬O·í§A¶i¤J±K½X«OÅ@®É,ÂsÄý¾¹¥X²{ªº»¡©ú
AuthUserFile "C:/Apache/htdocs/testing/.htpasswd" ¬O±K½XÀɮתº¦ì¸m
±K½XÀÉ®× (.htpasswd) ¤º¼g¤W:
user1:password1
user2:password2
2. ¦Û³]¿ù»~³ø§i¤å¥ó
.htaccess ¤º¼g¤W:
ErrorDocument 404 404.html
¦pªG§ä¤£¨ìºô­¶®É,«K¿é¥X 404.html ªº¤º®e,¨ä¥L¿ù»~®É°µªk¥çµM,¦p:
ErrorDocument 404 "<html><body>§ä¤£¨ìºô­¶</body></html>
ErrorDocument 500 500.html
3. ¦Û³]­º­¶ÀÉ®×
.htaccess ¤º¼g¤W:
DirectoryIndex a.html
­º­¶Àɮ׫K¬O a.html ¤F
4. ¨¾¤î¦C¥X¥Øºñ¤ºªºÀÉ®×
.htaccess ¤º¼g¤W:
Option -Indexes
³o«K¤£¯à¦C¥XÀɮץؿý¤F
.htaccess ¤º¼g¤W:
IndexIgnore *.zip *.txt
³o«K¤£¦C¥XÀɮץؿý¤ºªº .zip »P .txt ÀɤF


<Files>

#<Files>......</Files>¹ïÀɮתº³]©w¡A³]©w¤è¦¡»P<Directory>¬Û¦P¡C

TypesConfig

#«ü¦VMIME²ÕºAÀÉmime.types¡C

DefaultType

#³]©w¦øªA¾¹±N¨Ï¥Îªº¤å¥ó®æ¦¡¡C °²¦p§Ú­Ìªººô¯¸¨Ï¥Î«Ü¦hªº¤å¦rÀÉ (text) ©Î HTML ªº¤å¥ó¡A ¡§ text/plain ¡¨ ¬O¤@­Ó«Ü¦nªº°Ñ¼Æ¿ï¾Ü¡C°²¦p§Ú­Ìªººô¯¸¦³«Ü¦h°õ¦æÀÉ¡B¹Ï¤ù©ÎÀ³¥Îµ{¦¡¡A«h¨Ï¥Î ¡¨ application/octet-stream ¡¨ ·í°Ñ ¼Æ¡A«h¨Ï¥ÎªÌÂsÄý®É¡A·|Åã¥Ü¸ÓÀɮ׬°À³¥Îµ{¦¡¡C

HostnameLookups

#¯à°÷¬d¸ß¨Ï¥ÎªÌºÝªº IP ©M¥D¾÷¦WºÙ¡C¹w³]¬O Off¡C ¦pªG¥´¶} On «h¨C¦¸¨Ï¥ÎªÌ­n¨DªA°È®É¡A¦øªA¾¹´N·|¥h¬d¸ß¦WºÙ¦øªA¾¹ DNS ¸Ó¨Ï¥ÎªÌªº¸ê®Æ¡A³o¼Ë·|Åý¶O«Ü¦hºô¸ô¸ê·½¡C°£«D§Ú­Ì­n§@°O¿ýÀɪºµ{¦¡©ÎªÌ¬O§@ºô¯¸¸ê·½¨Ï¥Îªº²Î­p¤ÀªR¤~·|±N HostnameLookups µ¹¥´¶}¡C

ErrorLog

#³]©w¿ù»~°O¿ýÀɪº«ü¥O¡A·í§Ú­Ì¦³¿ù»~ªº¸ê°T®É¡A´N·|±N¿ù»~ªº¸ê°T¼g¦b error_log ÀɮפW¡C

LogLevel

#°O¿ýµ¥¯Å«ü¥O±±¨î°O¿ý¨ì¿ù»~°O¿ýÀɪº¸ê°T¼Æ¶q¡C

LogFormat

#³]©w¬ö¿ýÀɪº®æ¦¡¡C

CustomLog

#¶Ç°e¬ö¿ý¸ê°Tµ¹¬ö¿ýÀÉ©Î¥~³¡µ{¦¡¡C

ServerTokens

#§i¶D«È¤áºÝ§A¨Ï¥Îªº¬O¤°»ò¦øªA¾¹¡C³]©w Full ®É¡AApache¶Ç°e "Apache/version (OS_Type) Available_Module_Info" ¡C

ServerSignature

#³]©w¼W¥[ÃѧO¦WºÙ¦b¦øªA¾¹©Ò²£¥Íªº­¶­±¡C³]¬° On ®É¡Aµo¥Íºô­¶¿ù»~®É¡A¦b Error 404 «á­±¦³ºô¯¸¦WºÙ¡B¤é´Á¡B¦øªA¾¹ºÞ²zªÌ©M¦øªA¾¹ª©¥»¡C

Alias

#­«·s¦w¸m¤º®e¨ì§O¦W¡A¤]´N¬OÂà¦Vªº·N¸q¡CAlias «ü¥O¥i¥H±N½ÆÂøªº¸ô®|²¤Æ¡AÅý§Ú­Ì¥u­n¿é¤J§O¦W§Y¥i±o¨ì¬Û¦PªºÀɮצì¸m¡C

ScriptAlias

#³]©wCGI©R¥O½Zªº¥Ø¿ý§O¦W¡C

IndexOptions

#±±¨î¦øªA¾¹²£¥Íªº¥Ø¿ý¦ê¦CÅã¥Ü¡CFancyIndexing ¬Oªº¿ï¶µ¬OÅý§Ú­Ì¦³¼Ð·Çªº¥Ø¿ý¯Á¤Þ ( ¨Ï¥Î¹Ï¥Ü¯Á¤Þ ) ¡C

AddIconByEncoding

#±j­¢¯S®íªº¹Ï¥Ü¨ÓÅã¥Ü²Å¦X¯S®í MIME ¸ê®Æ½s½XªºÀɮסC

 

AddIcon

#§i¶D¦øªA¾¹¤°»òÀÉ®×Ãþ«¬Åã¥Ü¸ÓÀÉ®×Ãþ«¬ªº¹Ï¥Ü¡C³o¬O¥u¦³¥Î¦b FancyIndexed ¿ï¶µªº¯Á¤Þ¼Ò¦¡¥Ø¿ý¡C

AddLanguage

#Åý§Ú­Ì«ü©w¤å¥óªº»y¨¥¡A¨Ã¥B¥[¦bÀɮתº«á­±¡C

LanguagePriority

#³]©w»y¨¥ªºÀu¥ýÅv¡C§Ú­Ì¥i¥H±N tw ©ñ¦b«e­±¡C

AddCharset

#¼W¥[¦r¤¸¶°¡C

AddType

#³]©w«ü©wªºÀÉ®×¹ïÀ³¨ì MIME §ÎºA

#AddType application/x-httpd-php .php ±N.php¹ïÀ³¨ìhttpd-php

AddHandler

#¤¹³\§Ú­Ì¹ïÀ³«ü©wªºÀɮקκA¨ì«ü©w³B²z¨ç¦¡¡C

#AddHandler send-as-is asis ÅýÀɮפW¼W¥[¦Û¤vªº HTTP ¼ÐÀY¡C
#AddHandler imap-file map ¼W¥[¤ÀªR¦øªA¾¹ªº¹Ï§Î¹ïÀ³ÀÉ¡C
#AddHandler type var ¤¹³\ Apache ¦øªA¾¹¥H¦hºØ»y¨¥¨ÓÅã¥Ü¨äºô­¶¡A¹w³]¬O±Ò°Ê³o¶µ¥\¯à¡C

AddOutputFilte

#¤¹³\§Ú­Ì¦b°e¥X¤º®e¨ì¨Ï¥ÎªÌºÝ®É¥ý±N¥¦³B²z¨Ã¹LÂo¡C

ErrorDocument

#¹ï©ó¿ù»~ªº±¡ªpµo¥Í®É¡A ErrorDocument «ü¥O¥i¥H³]©w¦øªA¾¹¦^À³¯S©wªº¸ê°Tµ¹¨Ï¥ÎªÌºÝ¡C

BrowserMatch

#¨Ï¥Î BorwserMatch «ü¥O¡A§Ú­Ì¥i¥H³]©w®Ú¾Ú¤£¦PªºÂsÄý¾¹Ãþ«¬¨Ó¦^À³¡C

3.Virtual Hosts µêÀÀ¥D¾÷

NameVirtualHost

#³]©wµêÀÀ¥D¾÷ªº¦WºÙ

<VirtualHost>

#³]©wµêÀÀ¥D¾÷


Apache¥i¥H¨Ï¥Î³æ¤@¦øªA¾¹¨ÑÀ³³\¦hºô¯¸¡C·í¦³¤@­ÓÂsÄý¾¹ªº­n¨DªA°È¶i¨Ó§Ú­Ì¦øªA¾¹¡A Apache ·|Àˬdºô°ì¦WºÙ¡A¨Ã¥B±N¦^À³¹ïÀ³¨ì¯S©wªºµêÀÀ¥D¾÷¥Ø¿ý¥h¡C

1.¦WºÙ©w§}(name-based)

<VirtualHost 192.168.1.1>
ServerName ºô§}1
DocumentRoot
</VirtualHost>

<VirtualHost 192.168.1.1>
ServerName ºô§}2
DocumentRoot
</VirtualHost>

2.IP©w§}(IP-based)

<VirtualHost 192.168.1.1>
ServerName ºô§}1
DocumentRoot
</VirtualHost>

<VirtualHost 192.168.1.2>
ServerName ºô§}2
DocumentRoot
</VirtualHost>