伪静态问题

886 20天前 11

IIS 8
我想把index.php?id=数字  301到new.php?id=数字,用下面的规则为什么不行呢,错哪了,求指点。
已解决,问题出在问号上,utf-8编码转义
                <rule name="301" stopProcessing="true">
                    <match url="^new.php$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{QUERY_STRING}" pattern="^id=([0-9]+)$" />
                    </conditions>
                    <action type="Redirect" url="/new1.php?id={C:1}l" appendQueryString="false" redirectType="Permanent" />
                </rule>
最新回复 (6)
  • DaShi 20天前
    引用 2
    你要是把IIS写在标题上,我就不用点进来了
  • 逸笙 20天前
    引用 3
    你对match跟action这2个单词是不是没百度翻译过?
    你这几句的意思是,如果match到了new.php的url,那就做action,内容是redirect到index.php去。
    【很明显你的想法跟做**好相反】
    另外,应该用rewrite吧?
  • 电脑 20天前
    引用 4
    你要是把IIS写在标题上,我就不用点进来了
  • phpsky 20天前
    引用 5
    iis+php也是绝了
  • 楼主 886 20天前
    引用 6
    逸笙 发表于 2021-10-5 17:01
    你对match跟action这2个单词是不是没百度翻译过?
    你这几句的意思是,如果match到了new.php的url,那就做a ...
    解决了,问题是出在问号上。
    1.                 <rule name="301" stopProcessing="true">
    2.                     <match url="^new.php$" ignoreCase="false" />
    3.                     <conditions logicalGrouping="MatchAll">
    4.                         <add input="{QUERY_STRING}" pattern="^id=([0-9]+)$" />
    5.                     </conditions>
    6.                     <action type="Redirect" url="/new1.php?id={C:1}l" appendQueryString="false" redirectType="Permanent" />
    7.                 </rule>
  • mjjok 20天前
    引用 7
    逸笙 发表于 2021-10-5 17:01
    你对match跟action这2个单词是不是没百度翻译过?
    你这几句的意思是,如果match到了new.php的url,那就做a ...
    这是iis8
    rule 只是rewrite 下的一条规则。
    iis 直接在 web.comfig  写伪静态规则,或者其他规则,挺麻烦的,看起来也复杂。
    不过 直接用iis的 重写工具来 做方便一些。
    但是也有好多不懂的,微软也没有什么相应的 教程。
  • 游客
    8
返回