上篇文章介绍了Nextant插件,然而真正要让Nextant插件工作起来,需要Solr的支持。
java -version
如果你看到像下面的输出,这就意味着你并没有安装过Java:
The program ‘java’ can be found in the following packages:
*default -jre
* gcj-4.6 -jre-headless
* openjdk-6 -jre-headless
* gcj- 4.5 -jre-headless
* openjdk- 7 -jre-headless
Try: sudo apt-get install
Java
的不同之后, 让我们看如何安装他们.
在Ubuntu
上安装JRE
sudo apt-get install default-jre
Ubuntu
上安装OpenJDK
在终端,使用下面的命令安装OpenJDK Java开发工具包:
sudo apt-get install openjdk-8-jdk
java -version
sudo mkdir -p /solr
cd /solrSolr官网:https://lucene.apache.org/solr/
从清华大学的镜像站下载并解压:
sudo wget https://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/6.4.1/solr-6.4.1.zip sudo unzip solr-6.4.1.zip cd solr-6.4.1/server
默认情况下,Solr将侦听服务器的每个主机。你可以通过编辑etc/jetty-http.xml来指定仅使用127.0.0.1(localhost),并修改此行(行号36左右)
<Set name="host"><Property name="jetty.host" /></Set>
修改为
<Set name="host"><Property name="jetty.host" default="127.0.0.1" /></Set>
cd solr/
sudo cp -fr configsets/basic_configs nextant
cd ../..
sudo bin/solr start
如果启动失败(似乎是因为用root账户启用的它),直接加上-force忽略错误
sudo bin/solr start -force
$ bin/solr create -c nextant
现在可以使用./solr stop和./solr start从/solr/solr-6.4.1/bin/目录中停止或启动Solr。
# Solr ProxyPass /solr/ http://localhost:8983/solr/ ProxyPassReverse /solr/ http://localhost:8983/solr/
如果是虚拟主机,也要在虚拟主机的配置文件中添加上面的内容。
将Web管理界面的文件拷贝到网站目录
sudo cp -rf /solr/solr-6.4.1/server/solr-webapp/webapp /var/www/html/solr
访问http://localhost/solr
可以看到我们刚才创建的nextant核心文件 这个web管理界面没有任何密码保护,可以使用Apache自带的访问控制
可以到这个网站去生成一个密码文件http://htaccess.uuz.cc/#a_basic,密码文件重命名为htpasswd-solr,把它放到/etc/apache2/目录里(其实放在哪儿都可以,只要在下面的配置信息中(高亮的那行)指向这个文件并保证有足够权限访问就行了)
在apache2.conf或虚拟机配置文件加入
<Location /solr> AuthType Basic AuthName "solr" AuthUserFile /etc/apache2/htpasswd-solr #指向密码文件 Require valid-user </Location>
使用occ命令生成文件索引:
sudo -u www-data ./occ nextant:index
到Nextcloud->Apps->Not enabled中启用Nextant插件
再到Admin里的Additional Settings中找到Nextant的配置,配置如下,然后点击“Test and Save”
都是绿色的对号,配置正确。
点击右上角的放大镜,现在搜索框比原来长了不少。输入chengye
成功搜索到了包含“chengye”文本的txt文件!
没有测试在ownCloud中的运行情况,目测Nextant插件无法在ownCloud中激活。