完整的免责声明: java家伙,试着戴上.Net帽子...
我已经完成了如何设置NuGet服务器的演练,看起来它大部分都在工作。我得到了这个页面:
You are running NuGet.Server v1.8.30423.9026
Click here to view your packages. 然而,当我点击这个链接时,我得到了一个404。IIS已经添加了.nupkg mime类型,所以我看不出我还能做错什么。我已经在项目中添加了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,那里的日志文件甚至都没有最近的时间戳。或者,也许我在设置中遗漏了一些明显的东西?
发布于 2012-05-31 04:08:34
我实际上在调查Elmah没有记录任何东西的原因,并找到了这个帖子:
http://forums.asp.net/t/1800305.aspx/1
这个建议是:
您使用的是传统应用程序池还是集成应用程序池?看看它是不是很经典。如果是,那么您的httpmodule和httphandler将不会被设置,因为这是一个集成的定义,而不是一个经典的定义。
在改变了服务器上的设置(从经典到交互式)之后,瞧,它成功了!
https://stackoverflow.com/questions/10756944
复制相似问题