¡¡¡¡Ä¿Ç°Linux²Ù×÷ϵͳʮ·Ö»ð±¬£¬ËùÒԺܶàÅóÓÑÏ£ÍûÁ˽âÒ»ÏÂLinuxÏÂÐéÄâÓòÃûµÄʵÏÖ¹ý³Ì¡£ÏÂÃæ¾Í»ùÓÚÄ¿Ç°±È½ÏÁ÷ÐеÄRedHatÀ´ÌÖÂÛһϡ£ ¡¡¡¡¶þ¡¢Apache·þÎñÆ÷µÄÅäÖÃ
¡¡¡¡Apache·þÎñÆ÷ÊÇÄ¿Ç°»¥ÁªÍøÉÏʹÓÃ×î¶àµÄWeb·þÎñÆ÷£¬Ëü¿ÉÒÔά»¤·Ç³£·±Ã¦µÄÕ¾µã¡£RedHat 6.0À¦°óÁËApache Web Server 1.3¡£ËüµÄÅäÖÃÎļþλÓÚ"/etc/httpd/conf"Ŀ¼Ï£¬ÓÐhttpd.conf¡¢srm.conf¡¢access.conf£¬ÏÂÃæÌÖÂÛÒ»ÏÂÓëÐéÄâÓòÃûÓйصÄÅäÖãº
¡¡¡¡1¡¢¾²Ì¬ÅäÖÃ
¡¡¡¡ÐÞ¸ÄÅäÖÃÎļþ httpd.conf µÄ²½Ö裺
¡¡¡¡(1) Ê×ÏÈÉèÖÃUseCanonicalNameΪoff¡£ËüָʾÓ÷þÎñÆ÷Host:headerµÄÄÚÈÝ´úÌæServerName µÄÖµÀ´Ìṩ¸ø»·¾³±äÁ¿SERVER_NAME¡£
¡¡¡¡(2) È»ºó¼ÓÈ룺
¡¡¡¡NameVirtualHost xxx.xxx.xxx.xxxÆäÖÐxxx.xxx.xxx.xxxΪËùÒªÅäÖõÄÐéÄâ·þÎñÆ÷µÄIPµØÖ·¡£ÔÚ´Ë¿ÉÅäÖöà¸öÐéÄâIPµØÖ·£¬µ±È»ÒªÓëDNS·þÎñÆ÷ÖеÄÅäÖÃÒ»Ö¡££¨×¢Ò⣺ÕâÀïÒªÓÃIPµØÖ·£¬²»ÄÜÓÃÓòÃû¡££©
¡¡¡¡(3) ½ÓÏÂÀ´ÎªÃ¿¸öÐéÄâÓòÃû¼ÓÈëÒ»¶Î¼Ç¼£º
¡¡¡¡< virtualhost xxx.xxx.xxx.xxx> ¡¡¡¡..... ¡¡¡¡< /virtualhost>
¡¡¡¡xxx.xxx.xxx.xxxÒªºÍNameVirtualHostÅäÖõÄIPµØÖ·Ò»Ö¡£ÔÚÁ½¸ö±êÖ¾Ö®¼ä¿É¼ÓÈëµÄÅäÖòÎÊýÓУº
¡¡¡¡ServerNameºóÃæ¸úÄãÒªÔö¼ÓµÄÐéÄâÓòÃû£¬Èçaaa.domain.com £» ¡¡¡¡DocumentrootÈç¹ûÄãÓ³Éäµ½±¾»úµÄ·¾¶¾Í¼ÓÔÚºóÃ棬Èç"/home/aaa" £» ¡¡¡¡redirectÈç¹ûÄãÓ³Éäµ½Ô¶¶ËµÄURL¿É¼ÓÔÚºóÃ棬ÓÐÁ½¸ö²ÎÊý£¬µÚÒ»¸öÊÇÐéÄâÓòÃûµÄÏà¶Ô·¾¶£¬µÚ¶þ¸öÊÇÔ¶¶ËÕ¾µãµÄURL£» ¡¡¡¡ServerAliasºó¿É¼ÓÈë±¾ÓòÃûµÄ±ðÃû£¬¿ÉʹÓÃͨÅä·û£¬Èç*.aaa.domain.com ¡£
¡¡¡¡ÏÂÃæ¾ÙÁ½¸öÀý×Ó£º
¡¡¡¡Àý3¡¢Ó³Éäµ½±¾»úµÄÎïÀí·¾¶£º
¡¡¡¡< virtualhost xxx.xxx.xxx.xxx> ¡¡¡¡DocumentRoot "/home/test" ¡¡¡¡ServerName test.domain.com ¡¡¡¡< virtualhost> ¡¡¡¡Àý4¡¢Ó³Éäµ½Ô¶¶ËµÄURL£º
¡¡¡¡< virtualhost xxx.xxx.xxx.xxx> ¡¡¡¡ServerName test1.doamin.com ¡¡¡¡redirect / http://test.domain1.com/welcome.htm ¡¡¡¡< /virtualhost>
¡¡¡¡»¹ÓÐһЩ²ÎÊý£¬ÏólogÎļþµÄλÖᢳ¬Ê±µÄÉèÖᢻº³åÇøµÄÉèÖõȵȣ¬Ôڴ˲»Ò»Ò»½éÉÜ£¬¿ÉÒԲο¼Apache·þÎñÆ÷µÄÔÚÏß°ïÖúÎļþ¡£ÅäÖúÃhttpd.confÎļþºóÐèÒªÖØÐÂÆô¶¯ApacheµÄºǫ́ÊØ»¤½ø³Ìhttpd£¬
¡¡¡¡[root@domain /root]# /etc/rc.d/init.d/httpd restart
¡¡¡¡Ã¿Ôö¼ÓÒ»¸öÐéÄâÓòÃû¾ÍÒªÔö¼ÓÒ»¶ÎλÓÚ < VirtualHost...>...< /VirtualHost> Ö®¼äµÄÅäÖôúÂ룬¶øÇÒÖ»ÓÐÔÚÖØÐÂÆô¶¯ httpd ºóÐÂÅäÖòÅÄÜÉúЧ¡£
¡¡¡¡2¡¢¶¯Ì¬ÅäÖÃ
¡¡¡¡¿ÉÒÔ·¢ÏÖ£¬Èç¹ûÒªÅäÖôóÁ¿µÄÐéÄâÓòÃû½«´ó´óÔö¼ÓÅäÖÃÎļþµÄ³¤¶È£¬ÕâÑù»¹»áʹApacheÆô¶¯±äÂý£¬Õ¼Óøü¶àµÄÄڴ棬¶øÇÒÒ²²»ÈÝÒ×ʵÏÖÔÚÏßÉêÇë¡£¿ÉÒÔͨ¹ýÑ¡Ôñ¶¯Ì¬·½Ê½À´ÅäÖá£ÕâÑù²»±ØÊÂÏÈдºÃÅäÖ㬶øÊÇͨ¹ý±àдһ¶¨µÄ¶¯Ì¬¹æÔòÀ´×Ô¶¯Éú³É»òËæʱ´Ó¶ÀÁ¢µÄÅäÖÃÎļþÖжÁÈ¡ÐÅÏ¢¡£
¡¡¡¡ApacheÓÐÒ»¸öÇ¿´óµÄÀ©Õ¹¹¦ÄÜ£¬¼´Ä£¿é£¨Modules£©µÄÌØÐÔ¡£Ä£¿é¿É¶Ô·þÎñÆ÷µÄ¹¦ÄܽøÐÐÀ©³ä£¬ËüÔÚÔËÐкÍʹÓÃʱ²Å×°Èë·þÎñÆ÷£¬ÕâÑù±ÈÒ»Ö±·ÅÈë·þÎñÆ÷ÖÐÒª½ÚÊ¡ÄÚ´æ¿Õ¼ä£¬Í¬Ê±Ò²±Èµ÷ÓÃÍⲿCGI³ÌÐòËٶȿ졣
¡¡¡¡ÏÖÔÚʹÓÃÒ»¸ö¹¦ÄÜÇ¿´óµÄÄ£¿éÀ´ÊµÏÖ¶¯Ì¬ÅäÖÃÐéÄâÓòÃû£¬Õâ¾ÍÊÇmod_rewrite¡£Ëü¸ºÔðÕìÌý´Ó¿Í»§»úËͳöµÄURLµØÖ·£¬²¢»ùÓÚÒ»×é¹æÔò±í´ïʽ¶Ô¸ÃURLÀ´½øÐÐÖØд¡£ÕâÀàËÆÓÚURL±ðÃû¸ÅÄµ«Ëü¸ü½øÁËÒ»²½£¬Êä³öµÄURL¿ÉÒÔÓ³Éäµ½ÆäËûÖ÷»úµÄÈκÎURLµØÖ·ÉÏ¡£ ÐÞ¸ÄÅäÖÃÎļþhttpd.confµÄ²½Ö裺
¡¡¡¡(1) ÏÈÉèÖÃUseCanonicalNameΪoff ¡£
¡¡¡¡(2) ʹÓÃRewriteEngine on´ò¿ªrewriteÒýÇæ¡£ÓÃRewriteMapÉ趨ÅäÖÃÎļþµÄλÖúÍÊôÐÔ£¬ÓÃRewriteCondºÍRewriteRuleÖƶ¨ÏàÓ¦µÄ¹æÔò¡£
¡¡¡¡Àý5¡¢httpd.conf ÎļþÖÐÏà¹ØÅäÖõÄÒ»¸öÀý×Ó£º
¡¡¡¡RewriteEngine on ¡¡¡¡RewriteMap lowercase int:tolower ¡¡¡¡# ¶¨Òå¶ÀÁ¢µÄÅäÖÃÎļþµÄλÖà ¡¡¡¡RewriteMap vhost dbm:/www/conf/vhostdbm ¡¡¡¡# ÀûÓöÀÁ¢µÄÅäÖÃÎļþÖØÓ³ÉäÐéÄâÓòÃû ¡¡¡¡RewriteCond ${vhost:%1} ^(/.*)$ ¡¡¡¡RewriteRule ^/(.*)$ %1/docs/$1
¡¡¡¡RewriteCond %{REQUEST_URI} ^/cgi-bin/ ¡¡¡¡RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$ ¡¡¡¡RewriteCond ${vhost:%1} ^(/.*)$ ¡¡¡¡RewriteRule ^/(.*)$ %1/cgi-bin/$1
¡¡¡¡ÕâÀïµÄ vhostdbm Îļþ¸ñʽ¼û"CGI ³ÌÐòµÄ±àÖÆ" ¡£
|