΢Èí¹Ù·½ ASP.NET URL ÖØÐ´
ʵÏÖ URL ÖØÐ´
¿ÉÒÔʹÓà ISAPI ɸѡÆ÷ÔÚ IIS Web ·þÎñÆ÷¼¶±ðʵÏÖ URL ÖØÐ´£¬Ò²¿ÉÒÔʹÓà HTTP Ä£¿é»ò HTTP ´¦Àí³ÌÐòÔÚ ASP.NET ¼¶±ðʵÏÖ URL ÖØÐ´¡£±¾ÎÄÖØµã½éÉÜÈçºÎʹÓà ASP.NET ʵÏÖ URL ÖØÐ´£¬Òò´ËÎÒÃǽ«²»¶ÔʹÓà ISAPI ɸѡÆ÷ʵÏÖ URL ÖØÐ´µÄϸ½Ú½øÐÐÉîÈë̽ÌÖ¡£µ«ÊÇ£¬ÓдóÁ¿µÄµÚÈý·½ ISAPI ɸѡÆ÷¿ÉÓÃÓÚ URL ÖØÐ´£¬ÀýÈ磺
ISAPI Rewrite
IIS Rewrite
PageXChanger
»¹ÓÐÐí¶àÆäËûµÄɸѡÆ÷£¡
ͨ¹ý System.Web.HttpContext ÀàµÄ RewritePath() ·½·¨£¬¿ÉÒÔÔÚ ASP.NET ¼¶±ðʵÏÖ URL ÖØÐ´¡£HttpContext Àà°üº¬ÓйØÌض¨ HTTP ÇëÇóµÄ HTTP ÌØ¶¨ÐÅÏ¢¡£¶ÔÓÚ ASP.NET ÒýÇæÊÕµ½µÄÿ¸öÇëÇ󣬾ùΪ¸ÃÇëÇó´´½¨Ò»¸ö HttpContext ʵÀý¡£´ËÀà¾ßÓÐÈçÏÂÊôÐÔ£ºRequest ºÍ Response£¬Ìṩ¶Ô´«ÈëÇëÇóºÍ´«³öÏìÓ¦µÄ·ÃÎÊ£»Application ºÍ Session£¬Ìṩ¶ÔÓ¦ÓóÌÐòºÍ»á»°±äÁ¿µÄ·ÃÎÊ£»User£¬ÌṩÓйØÍ¨¹ýÁËÉí·ÝÑéÖ¤µÄÓû§µÄÐÅÏ¢£»ÆäËûÏà¹ØÊôÐÔ¡£
ʹÓà Microsoft® .NET Framework Version 1.0£¬RewritePath() ·½·¨¿ÉÒÔ½ÓÊܵ¥¸ö×Ö·û´®×÷ΪҪʹÓõÄз¾¶¡£HttpContext ÀàµÄ RewritePath(string) ·½·¨ÔÚÄÚ²¿¶Ô Request ¶ÔÏóµÄ Path ÊôÐÔºÍ QueryString ÊôÐÔ½øÐиüС£³ýÁË RewritePath(string)£¬.NET Framework 1.1 »¹°üÀ¨ÁíÒ»ÖÖÐÎʽµÄ RewritePath() ·½·¨£¬´Ë·½·¨¿ÉÒÔ½ÓÊÜÈý¸ö×Ö·û´®ÊäÈë²ÎÊý¡£´Ë±¸ÓÃÖØÔØÐÎʽ²»½öÒªÉèÖà Request ¶ÔÏóµÄ Path ÊôÐÔºÍ QueryString ÊôÐÔ£¬»¹ÒªÉèÖÃÄÚ²¿³ÉÔ±±äÁ¿£¬ÕâЩ±äÁ¿ÓÃÓÚ¼ÆËã Request ¶ÔÏóµÄ PhysicalPath¡¢PathInfo ºÍ FilePath ÊôÐÔÖµ¡£
ÒªÔÚ ASP.NET ÖÐʵÏÖ URL ÖØÐ´£¬ÐèÒª´´½¨ HTTP Ä£¿é»ò HTTP ´¦Àí³ÌÐò£¬ÒÔ±ãÍê³ÉÒÔϲÙ×÷£º
¼ì²é±»ÇëÇóµÄ·¾¶£¬ÒÔÈ·¶¨ URL ÊÇ·ñÐèÒªÖØÐ´¡£
Èç¹ûÐèÒªÖØÐ´£¬Í¨¹ýµ÷Óà RewritePath() ·½·¨À´ÖØÐ´Â·¾¶¡£
ÀýÈ磬¼ÙÉèÎÒÃǵÄÍøÕ¾Öаüº¬Ã¿¸öÔ±¹¤Í¨¹ý /info/employee.aspx?empID=employeeID ¾ù¿É·ÃÎʵÄÐÅÏ¢¡£ÎªÁËʹ URL ¿ÉÒÔ¸ü¶àµØ±»“ɾ½Ú”£¬ÎÒÃÇ¿ÉÒÔ¾ö¶¨Í¨¹ýÒÔϵØÖ·À´·ÃÎÊÔ±¹¤Ò³Ã棺/people/EmployeeName.aspx¡£Õâ¾ÍÊÇÎÒÃÇҪʹÓà URL ÖØÐ´µÄÒ»¸öÀý×Ó¡£Ò²¾ÍÊÇ˵£¬ÔÚÇëÇó /people/ScottMitchell.aspx Ò³ÃæÊ±£¬ÎÒÃÇÒªÖØÐ´¸Ã URL£¬ÒÔ±ãʹÓà /info/employee.aspx?empID=1001 Ò³Ãæ¡£
ʹÓà HTTP Ä£¿éÖ´ÐÐ URL ÖØÐ´
ÔÚ ASP.NET ¼¶±ðÖ´ÐÐ URL ÖØÐ´Ê±£¬¿ÉÒÔʹÓà HTTP Ä£¿é»ò HTTP ´¦Àí³ÌÐòÀ´Ö´ÐÐÖØÐ´¡£Ê¹Óà HTTP Ä£¿éʱ£¬±ØÐë¾ö¶¨ÔÚÇëÇóÓÐЧÆÚÄÚµÄÄĸöʱ¼äµãÉÏÀ´¼ì²é URL ÊÇ·ñÐèÒªÖØÐ´¡£Õ
Ïà¹ØÎĵµ£º
ASP.NET 2.0·þÎñÆ÷¿Ø¼þ¿ª·¢----¿Ø¼þÉúÃüÖÜÆÚ
·þÎñÆ÷¿Ø¼þÉúÃüÖÜÆÚ¼ò½é
¡¡¡¡·þÎñÆ÷¿Ø¼þµÄÉúÃüÖÜÆÚÊÇ´´½¨·þÎñÆ÷¿Ø¼þ×îÖØÒªµÄ¸ÅÄî¡£×÷Ϊ¿ª·¢ÈËÔ±£¬±Ø
Ðë¶Ô·þÎñÆ÷¿Ø¼þÉúÃüÖÜÆÚÉî¿ÌÀí½â¡£µ±È»£¬Õâ²»ÊÇÒ»³¯Ò»Ï¦¾Í¿ÉÒÔ×öµ½µÄ¡£¶ÔÓÚ
ѧϰ¿Ø¼þ¿ª·¢¼¼ÊõµÄ³õѧÕߣ¬¿ÉÒÔ²»±ØÕÆÎյ÷dz£ÏêϸÉîÈ룬ֻÐè¶Ô·þÎñÆ÷¿Ø¼þ
µÄÉúÃüÖÜ ......
Êý¾Ý´¦Àí³É¹¦ÂíÉÏÌø×ªµ½ÁíÍâÒ»¸öÒ³Ãæ£¡
ÄãµÄºǫ́´¦ÀíÒ³Ãæ£¬Ò²¾ÍÊÇÊý¾Ý½ÓÊÕÒ³Ãæ£¬Ö´ÐÐÍêÏà¹ØµÄ²Ù×÷ºó£¬Ê¹ÓÃÏÂÃæµÄÓï¾ä£º
response.write("<script>alert('Êý¾ÝÌá½»³É¹¦******');window.location.href='ÄãÏëҪתÏòµÄÒ³ÃæµÄµØÖ·';</script>")
ÕâÑùËæ±ãËû·µ»ØºóÔõôˢУ¬ÏÔʾµÄʼÖÕÊÇ“Êý¾ÝÌá½»³É¹¦ ......
¶ÏµãÐø´«µÄÔÀí
ÔÚÁ˽âHTTP¶ÏµãÐø´«µÄÔÀí֮ǰ£¬ÏÈÀ´ËµËµHTTPÐÒ飬HTTPÐÒéÊÇÒ»ÖÖ»ùÓÚtcpµÄ¼òµ¥ÐÒ飬·ÖΪÇëÇóºÍ»Ø¸´Á½ÖÖ¡£ÇëÇóÐÒéÊÇÓɿͻ§»ú(ä¯ÀÀÆ÷)Ïò·þÎñÆ÷(WEB SERVER)Ìá½»ÇëÇóʱ·¢Ëͱ¨ÎĵÄÐÒé¡£»Ø¸´ÐÒéÊÇÓÉ·þÎñÆ÷(web server)£¬Ïò¿Í»§»ú(ä¯ÀÀÆ÷)»Ø¸´±¨ÎÄʱµÄÐÒé¡£ÇëÇóºÍ»Ø¸´ÐÒé¶¼ÓÉÍ·ºÍÌå×é³É¡£Í·ºÍÌåÖ® ......
¡¡¡¡1.1 ʲôÊÇASP.net
¡¡¡¡ASP.net ÊÇÒ»ÖÖ½¨Á¢ÔÚͨÓÃÓïÑÔÉϵijÌÐò¹¹¼Ü£¬Äܱ»ÓÃÓÚһ̨Web·þÎñÆ÷À´½¨Á¢Ç¿´óµÄWebÓ¦ÓóÌÐò¡£ASP.netÌṩÐí¶à±ÈÏÖÔÚµÄWeb¿ª·¢Ä£Ê½Ç¿´óµÄµÄÓÅÊÆ¡£
¡¡¡¡Ö´ÐÐЧÂʵĴó·ùÌá¸ß
¡¡¡¡ASP.netÊǰѻùÓÚͨÓÃÓïÑԵijÌÐòÔÚ·þÎñÆ÷ÉÏÔËÐС£²»ÏñÒÔǰµÄASP¼´Ê±½âÊͳÌÐò£¬¶øÊǽ«³ÌÐòÔÚ·þÎñÆ÷¶ËÊ×´ÎÔËÐÐʱ½øÐ ......
·Ï»°²»Ëµ£¬Ö±½Ó´úÂ벿·Ö´úÂëÕª³×ÔÍøÉÏ£¬ÔÚ´ËÏëÔ×÷Õß±íʾ¸Ðл
1¡¢·þÎñ¶Ë uploadFile.ashx
<%@ WebHandler Language="VB" Class="UploadFile" %>
Imports System
Imports System.Web
Imports System.Web.HttpServerUtility
Imports System.IO
Imports System.Web.HttpRequest
Public Class UploadFile : Impl ......