Ich verwende MVC 6 mit .NET Core-RC2MVC 6, index.html .NET-Core auf non/api Urls Rewrite RC2
In meinem startup.cs ich folgendes haben (wie die meisten Menschen vorschlagen):
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseDefaultFiles();
app.UseStaticFiles();
app.UseMvc();
}
In meinem wwwroot/web.config Datei ich habe:
<configuration>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
<handlers>
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified"/>
</handlers>
<httpPlatform processPath="%DNX_PATH%" arguments="%DNX_ARGS%" stdoutLogEnabled="false" startupTimeLimit="3600"/>
<rewrite>
<rules>
<rule name="IndexHomeRule" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
<add input="{REQUEST_URI}" matchType="Pattern" pattern="^/api/" negate="true" />
</conditions>
<action type="Rewrite" url="/index.html" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Mein Ziel ist es, dass alle nicht/api Urls rewri sein tten to index.html für Angularjs, um das Routing mit html5mode zu handhaben. Das Hauptverzeichnis lädt index.html, aber ansonsten bekomme ich 404 Fehler für jede andere URL. Wie kann ich das Neuschreiben einrichten, wenn nicht über web.config?
Der einzige Controller ich jetzt haben, ist api/BuyersController.cs die Routen [Route("api/[controller]")]