私たちはかなり長い間 servicestack を実行しており、OrmLite と ServiceStack のコア ライブラリを更新する作業に取り掛かっています。
更新前はすべて正常に機能していましたが、現在はメタページとすべてのサービスが 404 - 見つかりませんページを返します。
web.config を見ると、何も変わっていません。
404 ページを返すようになったのはなぜですか? どうすれば修正できますか?
Web.Config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<httpHandlers>
<add path="*" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*" />
</httpHandlers>
</system.web>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.5.4.0" newVersion="6.5.4.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add path="*" name="ServiceStack.Factory" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" allowPathInfo="true" />
</handlers>
</system.webServer>
</configuration>
AppHost は Gist にあります: https://gist.github.com/JohnACarruthers/5366462
ルート 404ing は、それらすべて、具体的にはメタデータと REST URL のようです。
ServiceStack は、Apache を介して mono の fastcgi サーバーでホストされており、どちらの構成も変更されていません。
現在、現在の nuget パッケージ (3.9.43.0) を使用しており、3.9.25.0 でした。
更新: 生の SQL を実行すると、Mysql.Data が OverflowException をスローしていました。古いバージョンにロールバックすると、再び機能するようです。Mysql.Data のバグのあるバージョンは 6.6.4.0 でした。