虚拟主机上使用Lucene.Net索引失败的解决方案

时间:2010-11-13 阅读:
主要问题是,在虚拟主机上,站点是无法访问 C:\Windows\Temp 的,而Lucene.Net使用了这个临时目录,所以会失败,解决办法是修改Lucene.Net源码: 1.去下载一个Lucene.net项目的源代码http://incubator.apache.org/lucene.net/ JumbotCms用的是2.0.0.4 原Lucene.net项目中,Store\FSDirectory.cs public static readonly System.String LOCK_DIR = SupportClass.AppSettings.Get("Lucene.Net.lockDir", System.IO.Pat

主要问题是,在虚拟主机上,站点是无法访问 C:\Windows\Temp 的,而Lucene.Net使用了这个临时目录,所以会失败,解决办法是修改Lucene.Net源码:

1.去下载一个Lucene.net项目的源代码http://incubator.apache.org/lucene.net/   JumbotCms用的是2.0.0.4

原Lucene.net项目中,Store\FSDirectory.cs

 

public static readonly System.String LOCK_DIR = SupportClass.AppSettings.Get("Lucene.Net.lockDir", System.IO.Path.GetTempPath());

采用的是系统临时目录

 

只需要更改这个 "System.IO.Path.GetTempPath()" 成为你主机的IndexFiles目录就好了

我的改成了:

public static readonly System.String LOCK_DIR = SupportClass.AppSettings.Get("Lucene.Net.lockDir", System.Web.HttpContext.Current.Request.PhysicalApplicationPath+"\\IndexFiles");

附源码:http://www.jumbotcms.net/html/product/201011/13/59.html

[责任编辑:jumbot]

[发表评论] [收藏本页]