1

本番環境にデプロイした後、「404 - ファイルが見つかりません」というメッセージしか表示されません。

このサービスは、仮想ディレクトリ ( /v1 ) として構成する必要があります。独自のアプリケーション プールがあります。

http://www.jamesgoodfellow.com/blog/post/IIS-60---HTTP-404---File-not-found-Internet-Information-Services.aspxに従って ASP .Net 4.0 を有効にしました。

IIS 6 での .net 4.0 REST WCF サービスのホスティングに従って、ワイルドカードを追加し、Windows 統合セキュリティを削除しました

それはまだ動作しません...

これが私の web.config の ServiceModel 部分です。

    <system.serviceModel>
    <extensions>
        <behaviorExtensions>
            <add name="restHttpBehavior" type="--hidden for security purposes--, Version=0.8.0.0, Culture=neutral, PublicKeyToken=null"/>
        </behaviorExtensions>
    </extensions>
    <services>
        <service name="--hidden for security purposes--" behaviorConfiguration="MetadataBehavior">
            <host>
                <baseAddresses>
                    <add baseAddress="http://localhost/v1/api.svc"/>
                </baseAddresses>
            </host>

            <endpoint behaviorConfiguration="WebBehavior" binding="webHttpBinding" bindingConfiguration="restNoSSL" contract="--hidden for security purposes--"/>
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        </service>
    </services>
    <behaviors>
        <endpointBehaviors>
            <behavior name="WebBehavior">
                <restHttpBehavior/>
            </behavior>
        </endpointBehaviors>
        <serviceBehaviors>
            <behavior name="MetadataBehavior">
                <serviceMetadata httpGetEnabled="true"/>
                <serviceDebug includeExceptionDetailInFaults="false"/>
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <bindings>
        <webHttpBinding>

            <binding name="restNoSSL">
            </binding>
        </webHttpBinding>
    </bindings>
</system.serviceModel>

助けてください!!

4

2 に答える 2

1

ISAPIフィルターが実際にサービスをブロックしていたことが判明しました。そこで、ワイルドカードを削除し、Windows統合セキュリティを追加しました。これで、Webサイトが機能するようになりました。

于 2011-06-05T07:13:46.197 に答える
1

同じ問題を見ましたが、私にとっては、ISAPI ワイルドカードが間違った ISAPI ファイルを使用していたためでした。

これらのバージョンが存在します

64 ビット .net 2.0 aspnet_isapi.dll

32 ビット .net 2.0 aspnet_isapi.dll

64 ビット .net 4.0 aspnet_isapi.dll

32 ビット .net 4.0 aspnet_isapi.dll

32 ビットの .net 4.0 aspnet_isapi.dll を適用しても、サイトは機能します。

于 2013-02-06T14:10:29.783 に答える