我遵循了本教程:
http://www.andrehonsberg.com/article/install-sphinxsearch-205-in-ubuntu-1204-server
并在ec2上的ubuntu 12上安装了sphinx,问题是我的rails应用程序在名为“ubuntu”的用户和我的
下运行searchd.log
文件我看到它无法访问* .spl文件的警告。
FATAL: failed to open /home/ubuntu/sites/app/shared/db/sphinx/production/group.tmp.spl: Permission denied, will not index. Try --rotate option.
如何更改它以便所有sphinx都能在ubuntu用户下运行而不是root用户?
答案 0 :(得分:1)
使用root安装Sphinx很好,但您需要确保以ubuntu
用户身份运行所有Thinking Sphinx rake任务。
我建议停止你的Sphinx守护进程(如果它正在运行),然后删除索引文件,然后通过ts:rebuild
用户运行ubuntu
rake任务,以确保设置新的索引文件和守护进程正确的权限。
答案 1 :(得分:0)
我认为问题可能在开始时(在教程中)sudo su
,您以root用户身份登录;你应该只用sudo安装在EC2中。
我在一年半前的EC2中安装了Sphinx,我从未使用sudo su
。我建议您卸载Sphinx并重新安装:
./configure –prefix=/usr/local
make
sudo make install
另外,你应该尝试使用Solr的太阳黑子(我从Sphinx转移到Solr,在我看来它更好,原因很多,有很多基准测试)。希望它有所帮助。