问题描述
我正在尝试为我的 API 设置 urlrewrite。 现在我的网站就像:
cookhamburger.PHP?topping=mayo&how=grill
cookpasta.PHP?topping=ragu&how=aldente
鉴于我有许多实用程序已经绑定到这些 url,我想保持兼容,但我也想扩展我的网站。
因此我制作了一个以“食物”为参数的通用处理程序
cooksomething.PHP?what=pasta&topping=ragu&how=aldente
为了实现这一点,我必须使用像这样的正则表达式将旧的 url 重新映射到新的处理程序
cook(.*)\.PHP\?(.*)
匹配它 和如下重映射
cooksomething.PHP?what={R:1}&{R:2}
现在我的问题是,一旦我转到网址:
http://localhost/cookhamburger.PHP?topping=mayo&how=grill
Modulo «module» IIS Web Core
Notifica MapRequestHandler
Gestore «handler» PHP
Codice errore «error» 0x80070002
这是我用于损坏配置的 web.config:
<configuration>
<system.webServer>
<rewrite>
<rules>
<clear />
<rule name="Handler remap" stopProcessing="true">
<match url="^cook(.*)\.PHP\?(.*)" ignoreCase="true" />
<conditions logicalGrouping="MatchAny" trackAllCaptures="false">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="cooksomething.PHP?what={R:1}&{R:2}" appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
但是下面的重映射,例如
(.*)\?(.*)
cooksomething.PHP?{R:1}&{R:2}
/hamburger?topping=mayo
作品
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)