{"id":1944,"date":"2014-04-29T18:52:23","date_gmt":"2014-04-29T09:52:23","guid":{"rendered":"http:\/\/hyunsu.com\/wordpress\/?p=1944"},"modified":"2014-04-29T18:55:53","modified_gmt":"2014-04-29T09:55:53","slug":"solr-%ec%84%a4%ec%b9%98","status":"publish","type":"post","link":"https:\/\/hyunsu.com\/wordpress\/?p=1944","title":{"rendered":"solr \uc124\uce58"},"content":{"rendered":"<div style=\"color: #000000;\">\uc790\ubc14SDK\ub97c \ub2e4\uc6b4\ub85c\ub4dc \ud6c4 \/usr\/local\/java \uc5d0 \uc124\uce58\ud558\uace0 \/etc\/profile \uc5d0 java \uacbd\ub85c\ub97c \ucd94\uac00\ud55c\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">export JAVA_HOME=\/usr\/local\/java<\/pre>\n<p>&nbsp;<\/p>\n<p>solr \uacc4\uc815\uc744 \ub9cc\ub4e0\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">adduser solr<\/pre>\n<p>&nbsp;<\/p>\n<p>\uc774 \ud6c4 \uc791\uc5c5\uc740 solr \uacc4\uc815\uc73c\ub85c \uc804\ud658\ud574\uc11c \uc791\uc5c5\ud55c\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">su - solr\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>tomcat\uacfc solr\ub370\uc774\ud130 \ub514\ub809\ud1a0\ub9ac\ub294 \uc544\ub798\uc640 \uac19\uc774 \uc9c4\ud589\ud55c\ub2e4.<\/p>\n<p>&#8211; tomcat \ub514\ub809\ud1a0\ub9ac : \/home\/solr\/tomcat<br \/>\n&#8211; solr \ub514\ub809\ud1a0\ub9ac : \/search_data\/solr (\ub514\ub809\ud1a0\ub9ac\uad8c\ud55c\uc740 solr\ub85c \ubcc0\uacbd\ub418\uc5b4 \uc788\ub2e4\uace0 \uac00\uc815)<\/p>\n<p>tomcat\uc740 7.0.52 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud588\uace0 solr\ub294 4.7.0\uc744 \uc0ac\uc6a9\ud588\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>tomcat\uacfc solr \ub97c solr \ud648\ub514\ub809\ud1a0\ub9ac\uc5d0 \ub2e4\uc6b4\ub85c\ub4dc \ud6c4 \uc555\ucd95\uc744 \ud480\uace0 \ub9c1\ud06c\ub97c \uac74\ub2e4.<\/p>\n<pre class=\"lang:default decode:true \">wget http:\/\/mirror.apache-kr.org\/tomcat\/tomcat-7\/v7.0.52\/bin\/apache-tomcat-7.0.52.tar.gz\r\nwget http:\/\/mirror.apache-kr.org\/lucene\/solr\/4.7.0\/solr-4.7.0.tgz\r\n\u00a0\r\ntar xzpvf apache-tomcat-.7.0.52\r\ntar xzpvf solr-4.7.0.tgz\r\nln -sf apache-tomcat-7.0.52 tomcat<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>vi tomcat\/conf\/server.xml \ud30c\uc77c\uc744 \uc5f4\uc5b4\uc11c Connector \ubd80\ubd84\uc5d0 URIEncoding=&#8221;UTF-8&#8243; \uc635\uc158\uc744 \ucd94\uac00\ud55c\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">&lt;Connector port=\"8080\" protocol=\"HTTP\/1.1\"\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0connectionTimeout=\"20000\"\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0redirectPort=\"8443\"\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0URIEncoding=\"UTF-8\" &gt;&lt;\/Connector&gt;<\/pre>\n<p>&nbsp;<\/p>\n<p>solr \uc6f9\uc571 \ud30c\uc77c\uc744 tomcat \uc571\ub514\ub809\ud1a0\ub9ac\uc5d0 solr.war \uc774\ub984\uc73c\ub85c \ubcf5\uc0ac\ub97c \ud55c\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">cp -av solr-4.7.0\/dist\/solr-4.7.0.war tomcat\/webapps\/solr.war<\/pre>\n<p>&nbsp;<\/p>\n<p>solr \ud3f4\ub354\uc758 \ub0b4\uc6a9\uc744 \/search_data\/solr \ub85c \ubcf5\uc0ac\ud55c\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">cp -av solr-4.7.0\/* \/search_data\/solr\/<\/pre>\n<p>\uc774 \ubd80\ubd84\uc5d0\uc11c \ubcf4\ud1b5 \ub2e4\ub978 \uc124\uce58\ubb38\uc11c\ub97c \ubcf4\uba74 example\/solr \ub514\ub809\ud1a0\ub9ac\ub97c \ubcf5\uc0ac\ud558\ub294 \uac83\uc73c\ub85c \ub418\uc5b4 \uc788\ub294\ub370,<br \/>\n\uadf8\ub807\uac8c \uc124\uce58\ud558\uba74 solr \uc124\uce58\ub514\ub809\ud1a0\ub9ac\uc5d0 \uc788\ub294 contrib\ub4f1\uc758 \ub514\ub809\ud1a0\ub9ac\uc5d0 \uc788\ub294 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \ubabb \ucc3e\ub294\ub2e4\ub294 \uc5d0\ub7ec\uac00 \ub72c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>solr \uc6f9\uc571 \uc124\uc815\ud30c\uc77c\uc744 \ub9cc\ub4e0\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">mkdir -p tomcat\/conf\/Catalina\/localhost\r\ncd !$\r\nvi solr.xml<\/pre>\n<pre class=\"lang:default decode:true\">\u00a0&lt;?xml version='1.0' encoding='utf-8'?&gt;\r\n\u00a0\r\n&lt;Context crossContext=\"true\" debug=\"0\" docBase=\"\/home\/solr\/tomcat\/webapps\/solr\" priviledged=\"true\"&gt;\r\n\u00a0\u00a0\u00a0\u00a0&lt;Environment name=\"solr\/home\" override=\"true\" type=\"java.lang.String\" value=\"\/search_data\/solr\" &gt;&lt;\/Environment&gt;\r\n&lt;\/Context&gt;<\/pre>\n<p>&nbsp;<\/p>\n<p>\uc5ec\uae30\uae4c\uc9c0\uac00 \uac80\uc0c9\ud558\uba74 \ub098\uc624\ub294 \uc124\uce58\ubc29\ubc95\uc778\ub370, \uc5ec\uae30\uae4c\uc9c0 \ud558\uba74 catalina.out\uc5d0 \uc544\ub798\uc640 \uac19\uc740 \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud55c\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">SEVERE: Error filterStart\r\nMar 18, 2014 1:49:04 PM org.apache.catalina.core.StandardContext startInternal\r\nSEVERE: Context [\/solr] startup failed due to previous errors<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>\uc65c \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud558\ub294\uc9c0 \uc54c\uc218\uac00 \uc5c6\ub294\ub370 \uc54c\ub824\uba74<\/p>\n<p>tomcat\/webapps\/solr\/WEB-INF\/classes\/logging.properties \ud30c\uc77c\uc744 \ub9cc\ub4e4\uc5b4\uc11c \uc544\ub798 \ub0b4\uc6a9\uc744 \ucd94\uac00\ud574\uc900\ub2e4.<\/p>\n<pre class=\"lang:default decode:true \">org.apache.catalina.core.ContainerBase.[Catalina].level = INFO\r\norg.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler<\/pre>\n<p>&nbsp;<\/p>\n<p>tomcat\uc744 \uc7ac\uc2dc\uc791\ud558\uba74 \uc790\uc138\ud55c \ub85c\uadf8\uac00 \ub098\uc628\ub2e4.<\/p>\n<pre class=\"lang:default decode:true\">SEVERE: Exception starting filter SolrRequestFilter\r\njava.lang.NoClassDefFoundError: org\/slf4j\/LoggerFactory\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.solr.client.solrj.impl.HttpClientUtil.&lt;clinit&gt;(HttpClientUtil.java:78)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.solr.servlet.SolrDispatchFilter.&lt;init&gt;(SolrDispatchFilter.java:120)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at java.lang.reflect.Constructor.newInstance(Constructor.java:526)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at java.lang.Class.newInstance(Class.java:374)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:140)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.core.ApplicationFilterConfig.&lt;init&gt;(ApplicationFilterConfig.java:105)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4809)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5485)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:670)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1839)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at java.util.concurrent.FutureTask.run(FutureTask.java:262)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at java.lang.Thread.run(Thread.java:744)\r\nCaused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1718)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1569)\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0... 23 more\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>slf4j \uad00\ub828 \uc5d0\ub7ec\uac00 \ub098\uc624\ub294\ub370 \uad00\ub828\ub77c\uc774\ube0c\ub7ec\ub9ac\uc640 \uc124\uc815\ud30c\uc77c\uc744 tomcat\uc5d0 \ubcf5\uc0ac\ud574\uc8fc\uba74 \ub41c\ub2e4.<\/p>\n<pre class=\"lang:default decode:true \">cp -av solr-4.7.0\/example\/lib\/ext\/* tomcat\/lib\/\r\ncp -av solr-4.7.0\/example\/resources\/log4j.properties tomcat\/lib\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>log4j.properties \ud30c\uc77c\uc744 \uc5f4\uc5b4\uc11c solr.log \uacbd\ub85c\ub97c \uc218\uc815\ud55c\ub2e4.<\/p>\n<pre class=\"lang:default decode:true \">solr.log=\/home\/tomcat\/logs\/<\/pre>\n<p>&nbsp;<\/p>\n<p>\ub2e4\uc2dc tomcat\uc744 \uc7ac\uc2dc\uc791 \ud6c4\u00a0http:\/\/server:8080\/solr\u00a0\ub85c \uc811\uc18d\ud574\ubcf4\uba74 \ud398\uc774\uc9c0\uac00 \ub728\ub294 \uac83\uc744 \ud655\uc778 \ud560 \uc218 \uc788\ub2e4.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\uc790\ubc14SDK\ub97c \ub2e4\uc6b4\ub85c\ub4dc \ud6c4 \/usr\/local\/java \uc5d0 \uc124\uce58\ud558\uace0 \/etc\/profile \uc5d0 java \uacbd\ub85c\ub97c \ucd94\uac00\ud55c\ub2e4. export JAVA_HOME=\/usr\/local\/java &nbsp; solr \uacc4\uc815\uc744 \ub9cc\ub4e0\ub2e4. adduser solr &nbsp; \uc774 \ud6c4 \uc791\uc5c5\uc740 solr \uacc4\uc815\uc73c\ub85c \uc804\ud658\ud574\uc11c \uc791\uc5c5\ud55c\ub2e4. su &#8211; solr &nbsp; &nbsp; tomcat\uacfc solr\ub370\uc774\ud130 \ub514\ub809\ud1a0\ub9ac\ub294 \uc544\ub798\uc640 \uac19\uc774 \uc9c4\ud589\ud55c\ub2e4. &#8211; tomcat \ub514\ub809\ud1a0\ub9ac : \/home\/solr\/tomcat &#8211; solr \ub514\ub809\ud1a0\ub9ac : \/search_data\/solr (\ub514\ub809\ud1a0\ub9ac\uad8c\ud55c\uc740 solr\ub85c \ubcc0\uacbd\ub418\uc5b4 \uc788\ub2e4\uace0 \uac00\uc815) tomcat\uc740 7.0.52 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[56],"tags":[],"class_list":["post-1944","post","type-post","status-publish","format-standard","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1944","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1944"}],"version-history":[{"count":7,"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1944\/revisions"}],"predecessor-version":[{"id":1951,"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1944\/revisions\/1951"}],"wp:attachment":[{"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1944"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1944"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hyunsu.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1944"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}