如何安装Apache-Solr并使用它与Drupal和ISPConfig(OpenSUSE / Debian)
Solr是Apache Lucene项目中流行的,快速开源的企业搜索平台。 其主要功能包括强大的全文搜索,突出显示,多面搜索,动态聚类,数据库集成和丰富的文档(例如Word,PDF)处理。 我在OpenSUSE和Debian上使用这个功能(Debian略作调整,只是路径正确但几乎相同)。 包裹从2011年3月4日起。
搜索类固醇
安装Drupal 并使用ISPConfig 2。
在Drupal安装根目录下使用此.htacess
文件:
<IfModule mod_rewrite.c>
RewriteEngine on
#RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?q=$1 [L,QSA]
#RewriteCond %{REQUEST_URI} !=/favicon.ico
</IfModule>
更改/ web / sites / default /文件
中的.htacess
文件
并注释:
#SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006
#Options None
安装Drupal 本教程不包括完整的Drupal安装。
以root或sudo方式登录。
安装一些依赖关系Drupal需要:
pecl install uploadprogress
pecl install json
pecl install apc
pecl install -n solr-beta
还要安装Java 1.5(如果出现错误1.6)在您的服务器上。 (本教程不涉及Java安装。)
打开你的php.ini
...
nano -w /etc/php5/apache2/php.ini
...并粘贴以下扩展程序uploadprogress
, apc
和solr
,以便扩展加载PHP:
; Directory in which the loadable extensions (modules) reside.
extension_dir = /usr/lib64/php5/extensions
extension=uploadprogress.so
extension=apc.so
extension=solr.so
保存文件并重新启动webserver:
/etc/init.d/apache2 restart
cd /tmp
wget http://mirrors.ukfast.co.uk/sites/ftp.apache.org/lucene/solr/1.4.1/apache-solr-1.4.1.zip
unzip apache-solr-1.4.1.zip
mv apache-solr-1.4.1 apache-solr
cp -r apache-solr /usr/share/apache-solr
在我的case / srv / www / web11 / web中
复制Drupal安装中的配置
:
cp /srv/www/web11/web/sites/all/modules/apachesolr/solrconfig.xml /usr/share/apache-solr/example/solr/conf/solrconfig.xml
cp /srv/www/web11/web/sites/all/modules/apachesolr/schema.xml /usr/share/apache-solr/example/solr/conf/schema.xml
cd apache-solr/example
java -jar start.jar
在浏览器中测试(请记住在ISPConfig防火墙端口8983中打开):
http://yourwebsite.com:8983/solr/admin/
测试OK!
ctrl + c
在你的终端和apache-solr结束...但没关系。
让我们做一个启动脚本,以便在系统启动时启动solr:
nano -w /etc/init.d/solr
并粘贴此脚本:
#!/bin/sh -e
# Starts, stops, and restarts solr
SOLR_DIR="/usr/share/apache-solr/example"
JAVA_OPTIONS="-Xmx1024m -DSTOP.PORT=8079 -DSTOP.KEY=stopkey -jar start.jar"
LOG_FILE="/var/log/solr.log"
JAVA="/usr/bin/java"
case $1 in
start)
echo "Starting Solr"
cd $SOLR_DIR
$JAVA $JAVA_OPTIONS 2> $LOG_FILE &
;;
stop)
echo "Stopping Solr"
cd $SOLR_DIR
$JAVA $JAVA_OPTIONS --stop
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}" >&2
exit 1
;;
esac
使其可执行:
chmod a+rx /etc/init.d/solr
检查是什么启动:
chkconfig --list
不好了! solr没有启动。 当然不是!
chkconfig --add solr
然后试着阻止它:
service solr stop
哦。 它不工作? 我们试着开始吧
service solr start
在你的浏览器上测试
http://yourdomain.com:8983/solr/admin/
它还活着! apache-solr,搜索类固醇!
现在,您也可以重新启动服务器,并查看apache-solr的工作。 :)