2012-05-25 52 views
3

完全免責聲明:java的傢伙,試圖在.NET帽子...404的NuGet包鏈接

我已經通過步行走過的NuGet如何設置服務器上,它看起來像它主要工作。我得到這個頁面:

You are running NuGet.Server v1.8.30423.9026 

Click here to view your packages. 

然而,當我點擊鏈接,我收到了404 .nupkg MIME類型已被添加到IIS,所以我看不出還有什麼我可以做錯誤的。我已經添加NLOG到項目並添加記錄到Routes.cs類和兩個日誌報表顯示出來:

private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); 

public static void Start() { 
    Logger.Info("Start called in CompanyNameHereNuget"); 

    MapRoutes(RouteTable.Routes); 
} 

private static void MapRoutes(RouteCollection routes) { 
    Logger.Info("MapRoutes called in CompanyNameHereNuget"); 

    // The default route is http://{root}/nuget/Packages 
    var factory = new DataServiceHostFactory(); 
    var serviceRoute = new ServiceRoute("nuget", factory, typeof(Packages)); 
    serviceRoute.Defaults = new RouteValueDictionary { { "serviceType", "odata" } }; 
    serviceRoute.Constraints = new RouteValueDictionary { { "serviceType", "odata" } }; 
    routes.Add("nuget", serviceRoute); 
} 

private static PackageService CreatePackageService() { 
    return NinjectBootstrapper.Kernel.Get<PackageService>(); 
} 

有沒有我應該看一些其他的日誌文件?我查看了文件夾:C:\inetpub\logs,並且沒有任何日誌文件甚至有最近的時間戳記。或者,我可能在設置中缺少一些明顯的東西?

+0

類似的問題在這裏:http://nuget.codeplex.com/discussions/246387 –

回答

3

我其實尋找到爲什麼ELMAH沒有任何記錄,發現這個線程:

http://forums.asp.net/t/1800305.aspx/1

而且這個建議:

您在使用經典或集成的應用程序池?檢查它是否經典。 如果它是那麼你的httpmodules和httphandlers將不會被設置,因爲 這是一個集成的定義,而不是一個經典的定義。

更改服務器上的設置(從經典到交互式)後,瞧,它的工作!