web.config-忽略特定文件夹的重写

时间:2018-12-06 07:28:07

标签: c# asp.net wordpress url-rewriting web-config

根是WordPress网站。我需要忽略文件夹“ app”的URL重写,因为我在该文件夹上托管了一个虚拟目录.NET App。

CSV1 = np.random.uniform(0, 1, (666, 8))
CSV2 = np.random.uniform(0, 1, (1078, 8))
input_data = np.concatenate((CSV1,CSV2))

web.config中的URL重写规则部分起作用。如果URL链接到.NET应用程序中的静态文件或文件夹,则可以正常工作。如果URL链接到路由URL,则失败。如何解决?

例如,该URL:

http://www.mywebsite.com/app

应该路由到

mywebsite.com/app/Login

但是,它被WordPress捕获并显示404 not found错误。

如果以此方式输入URL,则运行正常:

mywebsite.com/app/Login.aspx

这是根站点(wordpress)上的web.config

mywebsite.com/app/Login.aspx

这是.NET App中用于URL路由的代码

<rule name="WordPress: http://www.mywebsite.com" patternSyntax="Wildcard">
<match url="*"/>
<conditions>
<add input="{R:0}" pattern="^/app" negate="true" />
<add input="{R:0}" pattern="^/app/(.*)$" negate="true" />
<add input="{R:0}" pattern="^app/(.*)$" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
</conditions>
<action type="Rewrite" url="index.php"/>
</rule>

1 个答案:

答案 0 :(得分:1)

我通过使用以下代码设法解决了这个问题:

<add input="{HTTP_URL}" pattern="*/app" negate="true"/>

有一个不错的reference by Microsoft,详细说明了这些规则的工作原理。