专注于高品质PHP技术等信息服务于一体 [STIEMAP] [RSS]

百度提供的广告:
PHP
当前位置:首页 > 技术文档 > PHP >  > 
iis7 Rewrite 重写组件

    <system.webServer>                                           
        <rewrite>                                           
            <rules>                                           
                <rule name="rule1" stopProcessing="true">                                           
                     <match url="^article/([0-9]+)/([_0-9a-z-]+)" />                                           
                     <action type="Rewrite" url="article.aspx?id={R:1}&amp;title={R:2}" />                                           
                </rule>                                           
                <rule name="rule2" stopProcessing="true">                                           
                    <match url="^tags/([0-9]+)" />                                           
                    <action type="Rewrite" url="tags.php?tags={R:1}"  />                                           
                </rule>                                           
                <rule name="rule3" stopProcessing="true">                                           
                    <match url="test.html" />                                           
                    <action type="Rewrite" url="test.asp"  />                                           
                </rule>                                           
            </rules>                                           
        </rewrite>                                           
    </system.webServer>                                            
                                           
                                           
说明:                                           
    每个规则为一个rule节;rule的名字应该是唯一的;                                       
    stopProcessing="true":如果已经匹配了规则,不再匹配以后的规则;                                       
    {R:n}:代表第n个()中正则表达式匹配的内容;                                       
    重写规则按照顺序匹配;                                       
                                           
规则一:将类似于http://localhost/article/342/some-article-title的url转向:                                           
        http://localhost/article.aspx?id=342&title=some-article-title                                           
                                           
规则二:将类似于http://localhost/tags/id的url转向:                                           
        http://localhost/tags.php?tags=id                                           
                                           
规则三:将类似于http://localhost/test.html的url转向:                                           
        http://localhost/test.asp                                           
可能出现的问题:                                               
问题一:                                               
不少人在第一次使用URL重写时,会发现他们的图像和CSS样式表引用有时会停止工作。                                               
                                               
原因:                                               
这是因为他们在网页里有对这些文件的相对引用,当你开始在应用里重写URL时,你需要意识到浏览器经常会在不同的逻辑层次结构层上                                               
(logical hierarchy levels)请求文件,而不是实际存储在服务器上的东西。                                                
                                               
                                                
建议:                                               
     1.网页中的引用的图片和文件的路径请采用绝对路径                                               
                                                


问题二:                                               
如果测试文件正常显示,但是用户编写的规则,不起作用。                                               
                                               
原因:                                               
因为用户编写的规则不正确,请用户修改后测试。                                               
                                                
参考网页:                                               
     http://learn.iis.net/page.aspx/461/creating-rewrite-rules-for-the-url-rewrite-module/                                               
     http://learn.iis.net/page.aspx/465/url-rewrite-module-configuration-reference/#Rewrite_Rules_Overview