¹Ù·½·¢²¼µÄ Apache µÄÖ÷ÅäÖÃÎļþÊÇ httpd.conf, ·þÎñÆ÷»¹»á¶Áȡһ¸ö°üº¬ MIME ÎļþÀàÐ͵ÄÎļþ£¬ÆäÎļþÃûÓÉ TypesConfig Ö¸ÁîÈ·¶¨£¬Ä¬ÈÏÖµÊÇmime.types ¡£
Ubuntu/Debian Ï嵀 Apache µÄÖ÷ÅäÖÃÎļþÊÇ /etc/apache2/apache2.conf, °üº¬ MIME ÎļþÀàÐ͵ÄÎļþÊÇ /etc/mime.types ¡£
´ËÍ⣬ΪÁ˰´Âß¼·Ö¸îÅäÖ㬻¹¿ÉÒÔÓà Include Ö¸ÁîºÍͨÅä·û¸½¼ÓÐí¶àÆäËûÅäÖÃÎļþ¡£Ubuntu ϸ½¼ÓÁËÈçϵÄÅäÖÃÎļþ£º
# °üº¬¶¯Ì¬Ä£¿éµÄÅäÖÃ:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
# °üº¬Óû§×Ô¼ºµÄÅäÖÃ:
Include /etc/apache2/httpd.conf
# °üº¬¶Ë¿Ú¼àÌýµÄÅäÖÃ:
Include /etc/apache2/ports.conf
# °üº¬Ò»°ãÐÔµÄÅäÖÃÓï¾äƬ¶Ï:
Include /etc/apache2/conf.d/[^.#]*
¡¡
# °üº¬ÐéÄâÖ÷»úµÄÅäÖÃÖ¸Áî:
Include /etc/apache2/sites-enabled/[^.#]*
ÅäÖÃÎļþµÄÓï·¨
*
ÿһÐаüº¬Ò»¸öÖ¸ÁÔÚÐÐβʹÓ÷´Ð±¸Ü¡±\¡±¿ÉÒÔ±íÊ¾ÐøÐÐ
*
ÅäÖÃÎļþÖеÄÖ¸Áî²»Çø·Ö´óСд£¬µ«ÊÇÖ¸ÁîµÄ²ÎÊý (argument) ͨ³£Çø·Ö´óСд
*
ÒÔ ¡±#¡± ¿ªÍ·µÄÐб»ÊÓΪע½â²¢ÔÚ¶Áȡʱ±»ºöÂÔ¡£×¢½â²»ÄܳöÏÖÔÚÖ¸ÁîµÄºó±ß
*
¿Õ°×ÐкÍÖ¸ÁîǰµÄ¿Õ°××Ö·û½«ÔÚ¶Áȡʱ±»ºöÂÔ£¬Òò´Ë¿ÉÒÔ²ÉÓÃËõ½øÒÔ±£³ÖÅäÖòã´ÎµÄÇåÎú
ÎÞÂÛÊÇÖ÷ÅäÖÃÎļþ»¹ÊÇÓà Include Óï¾ä°üº¬µÄÅäÖÃÎļþ£¬¶¼Ó¦¸Ã×ñ´Ó Apache µÄÅäÖÃÓï·¨¡£
Apache µÄÄ£¿é
Apache ÊÇÄ£¿é»¯µÄ·þÎñÆ÷£¬ËüÓÐÁ½ÖÖ±àÒ뷽ʽ£º
*
¾²Ì¬±àÒ룺½«ºËÐÄÄ£¿éºÍËùÐèÒªµÄÄ£¿éÒ»´ÎÐÔ±àÒë
o
Óŵ㣺ÔËÐÐËÙ¶È¿ì
o
ȱµã£ºÒªÔö¼Ó»òɾ³ýÄ£¿é±ØÐëÖØÐ±àÒëÕû¸ö Apache
*
¶¯Ì¬±àÒ룺ֻ±àÒëºËÐÄÄ£¿éºÍ DSO £¨¶¯Ì¬¹²Ïí¶ÔÏó£©Ä£¿é -- mod_so
o
Óŵ㣺¸÷Ä£¿é¿ÉÒÔ¶ÀÁ¢±àÒ룬²¢¿ÉËæÊ±Óà LoadModule Ö¸Áî¼ÓÔØ£¬ÓÃÓÚÌØ¶¨Ä£¿éµÄÖ¸Áî¿ÉÒÔÓÃ
o
ȱµã£ºÔËÐÐËÙ¶ÈÉÔÂý
Ubuntu ÖÐµÄ Apache ÊǶ¯Ì¬±àÒëµÄ¡£ÔÚ Ubuntu ÏÂÅäÖÃÄ£¿é£º
1.
ÊÓÐèÒªÐÞ¸Ä mods-available/ Ŀ¼ÏÂÏà¹ØÄ£¿éµÄÅäÖÃÎļþ
2.
ʹÓà a2enmod ÃüÁîÆôÓÃÄ£¿é£» ʹÓà a2dismod ÃüÁîÍ£ÓÃÄ£¿é
ÀýÈ磺 ÆôÓà rewrite Ä£¿é¿ÉÒÔÓÃÈçÏÂÃüÁ
sudo a2enmod rewrite
Í£Óà cgi Ä£¿é¿ÉÒÔÓÃÈçÏÂÃüÁ
sudo a2dismod cgi
Ö¸ÁîµÄ×÷ÓÃÓò
´ÓÖ¸ÁîµÄ×÷ÓÃÓòÀ´»®·Ö£¬Apache ÖÐÓÐÁ½ÀàÖ¸Á
*
ÆÕָͨÁÆÕָͨÁî¶ÔÕû¸ö·þÎñÆ÷¶¼ÓÐЧ
*
ÈÝÆ÷Ö¸Á¿ÉÒÔ·ÅÖÃÔÚÈÝÆ÷ÄÚ¶ÔÌØ¶¨µÄ·ÃÎÊ×ÊԴʵʩ¶îÍâµÄÅäÖã¬ËüÖ»¶ÔÌØ¶¨µÄ·ÃÎÊ×ÊÔ´ÓÐЧ
Apache Öг£ÓõÄÈÝÆ÷°üÀ¨£º
*
*
*
*
ÈÝÆ÷¶¼ÊdzɶԳöÏֵģ¬ËùÓÐÔÚÈÝÆ÷ÖÐʹÓõÄÅäÖÃÖ¸Áî¶¼Ó¦¸Ã·ÅÖÃÔÚ <> ºÍ > ÄÚ£¬È磺
¡¡
*
ÒÔÉÏËùÓдø ¡°Match¡± µÄÈÝÆ÷Ö¸ÁîÓëÆäÏàÓ¦µÄ²»´ø ¡°Match¡± µÄÈÝÆ÷Ö¸ÁÄÜÏàͬ£¬Ö»ÊÇÔÚÃèÊö×ÊԴʱ¿ÉÒÔʹÓÃÕýÔò±í´ïʽ
*
ÕâЩÈÝÆ÷»¹¿ÉÒÔ½øÐÐǶÌ×£¬ÒÔ½øÐиü¾«Ï¸µÄÅäÖÃ
´ËÍ⣬Apache »¹¾ß±¸Í¬Ê±Ö§³Ö¶à¸öÕ¾µãµÄÄÜÁ¦£¬³ÆÎªÐéÄâÖ÷»ú¡£·ÅÖÃÔÚ
ËäÈ»´ó¶àÊýÖ¸Áî¿ÉÒÔ°üº¬ÔÚÈÎÒâµÄÈÝÆ÷ÖУ¬µ«ÊÇÒ²ÓÃÌØÀý¡£Òª²éѯһ¸öÖ¸Áî¿ÉÒÔ±»Ó¦ÓÃÓÚÄÄЩÅäÖöÎÖУ¬¿ÉÒÔÔÚ Apache ÊÖ²áÖв鿴¸ÃÖ¸ÁîµÄ ×÷ÓÃÓò Ïî¡£
»ùÓÚĿ¼µÄÅäÖÃÎļþ
Apache ³ýÁËʹÓÃÖ÷ÅäÖÃÎļþÖ®Í⣬»¹¿ÉÒÔʹÓ÷ֲ¼ÔÚÕû¸öÍøÕ¾Ä¿Â¼Ê÷ÖеÄÌØÊâÎļþÀ´½øÐзÖÉ¢ÅäÖá£ÕâÑùµÄÌØÊâÅäÖÃÎļþ³ÆÎª»ùÓÚĿ¼µÄÅäÖÃÎļþ£¬ ÕâÐ©ÌØÊâµÄÎļþͨ³£½Ð .htaccess £¬µ«ÊÇÒ²¿ÉÒÔÓà AccessFileName Ö¸ÁîÀ´¸Ä±äËüµÄÃû×Ö¡£
ÏÔÈ»£¬»ùÓÚĿ¼µÄÅäÖÃÎļþ £¨.htaccess Îļþ£©ÖÐÖ¸ÁîµÄ×÷ÓÃÓòÊÇ´æ·ÅËüµÄÄǸöĿ¼¼°ÆäËùÓÐ×ÓĿ¼¡£
*
.htaccess ÎļþµÄÓï·¨ÓëÖ÷ÅäÖÃÎļþÏàͬ¡£·ÅÔÚ
*
ÓÉÓÚ¿Í»§¶Ô·þÎñÆ÷µÄÿ´Î·ÃÎÊÇëÇó¶¼»á¶ÁÈ¡.htaccessÎļþ£¬ËùÒÔ¶ÔÕâЩÎļþµÄÐ޸ĻáÁ¢¼´ÉúЧ£¬¼´ÎÞÐèʹ·þÎñÆ÷¼ÓÔØÅäÖÃÎļþ»òÖØÐÂÆô¶¯¡£
»ù±¾ÅäÖÃÖ¸Áî
·þÎñÆ÷±êʶָÁî
*
ServerName : ·þÎñÆ÷ÓÃÓÚ±æÊ¶×Ô¼ºµÄÖ÷»úÃûºÍ¶Ë¿ÚºÅ
*
ServerAdmin : ·þÎñÆ÷·µ»Ø¸ø¿Í»§¶ËµÄ´íÎóÐÅÏ¢Öаüº¬µÄ¹ÜÀíÔ±ÓʼþµØÖ·
*
ServerSignature : ÅäÖ÷þÎñÆ÷Éú³ÉÒ³ÃæµÄÒ³½Å(´íÎóÐÅÏ¢¡¢mod_proxyµÄftpĿ¼ÁÐ±í¡¢mod_infoµÄÊä³ö)
*
ServerTokens : ¿ØÖÆÁË·þÎñÆ÷»ØÓ¦¸ø¿Í»§¶ËµÄ¡±Server:¡°Ó¦´ðÍ·ÊÇ·ñ°üº¬¹ØÓÚ·þÎñÆ÷²Ù×÷ϵͳÀàÐͺͱàÒë½øµÄÄ£¿éÃèÊöÐÅÏ¢
*
UseCanonicalName : ¾ö¶¨ Apache ÈçºÎ¹¹Ôì URL ÖÐ SERVER_NAME ºÍ SERVER_PORT µÄÖ¸Áî¡£
Îļþ¶¨Î»Ö¸Áî
*
DocumentRoot : ×é³ÉÍøÂçÉϿɼûµÄÖ÷ÎĵµÊ÷µÄ¸ùĿ¼
*
ErrorLog : ´æ·Å´íÎóÈÕÖ¾µÄλÖÃ
*
LockFile : µ± AcceptMutex Ö¸ÁîµÄÖµÊÇ fcntl »ò flock µÄʱºò£¬Apache ʹÓõÄËøÎļþµÄλÖÃ
*
PidFile : ÉèÖ÷þÎñÆ÷ÓÃÓڼǼ¸¸½ø³Ì(¼à¿Ø½ø³Ì) PID µÄÎļþ¡£
*
ScoreBoardFile : ´æ´¢×Ó½ø³Ìе÷Êý¾Ý(coordination data)µÄÎļþ£¨Apache ʹÓà scoreboard ÔÚ¸¸½ø³ÌºÍ×Ó½ø³ÌÖ®¼ä½øÐÐͨÐÅ£©
*
ServerRoot : Ö¸¶¨·þÎñÆ÷°²×°µÄ»ù´¡Ä¿Â¼
ÊÕ½ô Ubuntu Ï嵀 Apache ÅäÖÃ
¶ÔÓÚʵ¼ÊµÄ²úÆ··þÎñÆ÷£¬Ó¦¸ÃÊ×ÏÈÊÕ½ô Apache µÄÅäÖá£Îª´Ë¿ÉÒÔÔÚ /etc/apache2/conf.d/ Ŀ¼Ï´´½¨Ò»¸öÐ嵀 local_configs.conf ÎļþÌí¼ÓÈçϵÄÅäÖãº
/etc/apache2/conf.d/local_configs.conf
# ÉèÖÃ ServerName
ServerName www.jamond.net
# ¶Ô / ½øÐб£»¤
# Forbid default access to file system locations
Order Deny,Allow
Deny from all
# prevent use of .htaccess files in all directories
# apart from those specifically enabled.
AllowOverride None
# ÏÞÖÆÏÔʾ·þÎñÆ÷µÄ¿ÉÓÃÐÅÏ¢
ServerSignature Off
ServerTokens production
Apache µÄ¹ÜÀí¹¤¾ß
Apache Ì×¼þÖаüº¬ÁËÐí¶à¿ÉÖ´ÐгÌÐò£¬ÆäÖÐÒ»²¿·ÖÊǹÜÀí¹¤¾ß£¬±¾½Ú½ö½éÉÜ apache2ctl¡£
apache2ctl
apache2ctl ÊÇ Apache2 ·þÎñÆ÷µÄǰ¶Ë³ÌÐò¡£Ëû¿ÉÒÔ°ïÖú¹ÜÀíÔ±¿ØÖÆ Apache2 ºóÌ¨ÊØ»¤½ø³ÌµÄ¹¦ÄÜ¡£
apache2ctl½Å±¾ÓÐÁ½ÖÖ²Ù×÷ģʽ£º
*
×÷Ϊ¼òµ¥µÄ apache2 µÄǰ¶Ë³ÌÐò£¬ÉèÖÃËùÓбØÒªµÄ»·¾³±äÁ¿£¬È»ºóÆô¶¯ apache2£¬²¢´«µÝËùÓеÄÃüÁîÐвÎÊý¡£
*
×÷Ϊ SysV ³õʼ»¯½Å±¾£¬½ÓÊܼòµ¥µÄÒ»¸öµ¥´ÊµÄ²ÎÊý£¬È磺start, restart, stop £¬²¢°ÑËûÃÇ·ÒëΪÊʵ±µÄÐźŷ¢Ë͸ø apache2 ¡£
*
ÔÚ Ubuntu µÄ Apache2 Æô¶¯½Å±¾ /etc/init.d/apache2 ÖУ¬¾ÍÊǵ÷Óà apache2ctl ʵÏÖ¿ØÖƵġ£
apache2ctl ÓÐÁ½ÖÖÓï·¨¸ñʽ£º
apache2ctl -²ÎÊý
apache2ctl ¶¯×÷Ñ¡Ïî
ʹÓà apache2ctl µÄÃüÁî²ÎÊý
*
ÏÔʾ apache µÄ°æ±¾
apache2ctl -v
*
ÏÔʾ apache µÄ°æ±¾ºÍ±àÒë²ÎÊý
apache2ctl -V
*
Êä³öÒ»¸ö¿ÉÓõÄÃüÁîÐÐÑ¡ÏîµÄ¼òҪ˵Ã÷
apache2ctl -h
*
Êä³öÒ»¸ö¾²Ì¬±àÒëÔÚ·þÎñÆ÷ÖеÄÄ£¿éµÄÁÐ±í¡£Ëü²»»áÁгöʹÓà LoadModule Ö¸Á̬¼ÓÔØµÄÄ£¿é
apache2ctl -l
*
Êä³öÒ»¸öÖ¸ÁîµÄÁÐ±í£¬²¢°üº¬Á˸÷Ö¸ÁîµÄÓÐЧ²ÎÊýºÍʹÓÃÇøÓò
apache2ctl -L
*
½ö¶ÔÅäÖÃÎļþÖ´ÐÐÓï·¨¼ì²é¡£¡£Èç¹û»¹Ö¸¶¨ÁË¡±-D DUMP_VHOSTS¡±£¬Ôò»áÏÔʾÐéÄâÖ÷»úÅäÖõÄÏêϸÐÅÏ¢
apache2ctl -t
*
ÏÔʾ´ÓÅäÖÃÎļþÖжÁÈ¡²¢½âÎöµÄÉèÖýá¹û (Ŀǰ½öÏÔʾÐéÄâÖ÷»úµÄÉèÖÃ)
apache2ctl -S
ʹÓà apache2ctl µÄ¶¯×÷Ñ¡Ïî
*
Æô¶¯ apache2 ºóÌ¨ÊØ»¤½ø³Ì¡£Èç¹ûÒѾÆô¶¯£¬Ôò²úÉúÒ»¸ö´íÎó¡£
apache2ctl start
*
Í£Ö¹ apache2 ºóÌ¨ÊØ»¤½ø³Ì¡£
apache2ctl stop
*
ÖØÐÂÆô¶¯ apache2 ºóÌ¨ÊØ»¤½ø³Ì¡£Èç¹ûÊØ»¤½ø³ÌÉÐδÔËÐУ¬ÔòÆô¶¯Ëü¡£ÔÚÖØÐÂÆô¶¯ÊØ»¤½ø³Ì֮ǰ£¬´ËÃüÁî»áʹÓà configtest ×Ô¶¯¼ì²éÅäÖÃÎļþ£¬ÒÔÈ·±£ Apache ²»»áËÀµô¡£
apache2ctl restart
*
ÏÔʾһ¸ö¼òÒªµÄ״̬±¨¸æ¡£
apache2ctl status
*
ÓÅÑŵØÖØÐÂÆô¶¯ apache2 ºóÌ¨ÊØ»¤½ø³Ì¡£Èç¹ûÊØ»¤½ø³ÌÉÐδÆô¶¯£¬ÔòÆô¶¯Ëü¡£ËüºÍ±ê×¼ÖØÐÂÆô¶¯µÄ²»Í¬Ö®´¦ÔÚÓÚ£º²»»áÖжϵ±Ç°ÒѾ´ò¿ªµÄÁ¬½Ó£¬Ò²²»»áÁ¢¼´¹Ø±ÕÈÕÖ¾¡£ÕâÒâζ×Å£¬Èç¹ûÔÚÈÕÖ¾¹ö¶¯½Å±¾Ê¹ÓÃËü£¬ÔòÔÚ´¦ÀíÈÕ־֮ǰ±ØÐë¼ÓÈëÒ»¸öʵʵÔÚÔÚµÄÑÓ³Ù£¬ÒÔÈ·±£ÀϵÄÈÕÖ¾ÎļþÔÚ±»´¦ÀíǰÒѾ¹Ø±Õ¡£ÔÚÖØÐÂÆô¶¯ÊØ»¤½ø³Ì֮ǰ£¬´ËÃüÁî»áʹÓà configtest ×Ô¶¯¼ì²éÅäÖÃÎļþ£¬ÒÔÈ·±£ apache ²»»áËÀµô¡£
apache2ctl graceful
*
ÓÅÑŵØÍ£Ö¹ apache2 ºóÌ¨ÊØ»¤½ø³Ì¡£ËüºÍ±ê׼ֹͣµÄ²»Í¬Ö®´¦ÔÚÓÚ£º²»»áÖжϵ±Ç°ÒѾ´ò¿ªµÄÁ¬½Ó£¬Ò²²»»áÁ¢¼´¹Ø±ÕÈÕÖ¾¡£
apache2ctl graceful-stop
*
Ö´ÐÐÒ»´ÎÅäÖÃÎļþÓï·¨¼ì²é¡£Ëü½âÎöÅäÖÃÎļþ£¬²¢±¨¸æ Syntax Ok »òÕßÊÇÌØ¶¨µÄÓï·¨´íÎóÏêϸÐÅÏ¢¡£
apache2ctl configtest