我正在使用apache-tomcat。我的solr在我的localhost上工作正常。現在我想把它放在網上。在apache-tomcat中,在我的bin文件夾中,我放了我的solr目錄。但是在線,我沒有任何bin文件夾。所以任何人都可以告訴我如何配置solr在我的網站主機dir.thanks提前如何在我的網上配置solr?
0
A
回答
2
首先你要保護你的整個tomcat網絡管理員gui要求認證。首先,在/etc/tomcat6/tomcat-users.xml
<tomcat-users>
<role rolename="admin"/>
<role rolename="manager"/>
<role rolename="proxyUsers"/>
<user username="jorno" password="XXXXX" roles="admin,manager,proxyUsers"/>
<user username="proxyUser" password="XXXXXX" roles="proxyUsers"/>
</tomcat-users>
新用戶在文件中添加安全約束/etc/tomcat6/web.xml
<security-constraint>
<web-resource-collection>
<web-resource-name>
Solr authenticated application
</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>solrUsers</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Basic Authentication</realm-name>
</login-config>
<security-role>
<description>solr users</description>
</security-role>
記住要重新啓動Tomcat
/etc/init.d/tomcat6 restart
訪問您的tomcat solr應用程序web gui並檢查驗證是否有效。
現在我們在apache中創建實際的代理。首先,創建一個簡單的網站。 PHP是必需的。下面的例子虛擬主機將做的伎倆。注意重寫。
q.example.com - Solr的搜索引擎代理
<VirtualHost *>
ServerAdmin [email protected]
DocumentRoot /var/www/q.example.com
ServerName q.example.com
ServerAlias solr.example.com
AddDefaultCharset UTF-8
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
# REWRITES
RewriteEngine on
# Debug:
# RewriteLog /tmp/rwlog
# RewriteLogLevel 9
RewriteRule ^/([^/]+)/? /index.php [NC,L]
</VirtualHost>
記住重裝阿帕奇
/etc/init.d/apache2 reload
現在創建的站點的根目錄的index.php文件。根據您更新索引的頻率,您可能希望讓用戶緩存代理的內容。我在這裏設置了5分鐘。
<?php
// Avvoid too long client cache
// calc an offset of 5 minutes
$offset = 60 * 5;
// calc the string in GMT not localtime and add the offset
$expire = "Expires: " . gmdate("D, d M Y H:i:s", time() + $offset) . " GMT";
//output the HTTP header
Header($expire);
// Write the result from solr
Echo file_get_contents('http://proxyUser:[password]@127.0.0.1:8080/solr/select?'.$_SERVER["QUERY_STRING"]);
?>
就是這樣。您現在可以測試像這樣
代理http://q.example.com/select?q=%3A &縮進=上
相關問題
- 1. Heroku上的Solr配置
- 2. 如何在Hybris中爲新的新網站配置solr?
- 3. Solr的配置
- 4. 如何在我的WordPress博客上配置漂亮的網址?
- 5. 如何在Solr中配置詞幹?
- 6. 如何在solr中配置IndexBasedSpellChecker?
- 7. HOR網絡的Solr配置HA
- 8. 如何在我的網站上配置數據饋送
- 9. 我應該如何配置我的Solr filterCache,firstSearcher和newSearcher?
- 10. Solr的雲配置
- 11. Solr配置
- 12. 如何在實時VPS上設置Solr?
- 13. 如何在服務器上設置Solr?
- 14. 如何配置Vagrant在本地網絡上爲我的網站提供服務?
- 15. 如何在我的網站上配置網絡電子郵件帳戶php
- 16. 如何修復Debian Wheezy上缺失的solr tomcat6配置?
- 17. 在線配置apache solr
- 18. 如何配置多核心Solr複製
- 19. 如何配置Maven不上網
- 20. SOLR配置問題
- 21. Solr配置複製
- 22. Solr和Zookeeper配置
- 23. Solr不會配置
- 24. Dspace和SOLR配置
- 25. Solr碎片配置
- 26. 如何從網絡上訪問Solr UI
- 27. Solr。我如何配置DataImportHandler以通過代理獲取數據?
- 28. 如何正確設置配置友好數據位置的solr配置
- 29. dynamicField在Django的草垛SOLR配置
- 30. 我如何在網上放置我的Ckan平臺?