私は動作しているSolrサーバーを持っていますが、私のdrupalは常に接続に失敗します、何が間違っているのですか?
サーバーを追加してsolrサーバーのURLをクリックすると、サーバーに移動します(パスが正しいため)のに、次のメッセージが表示され続けます:Solrサーバーにアクセスできませんでした。
私は(ローカルではなく)サーバーでApache solrをホストしています。
ホスト:サーバーのIPアドレス
ポート:8983
誰かが私を助けてくれますか?
@see "あなたのサイトはApache Solrサーバーに接続できませんでした"
私はこの記事 https://www.lullabot.com/blog/article/installing-solr-use-drupal に従います。サイトとApacheを再構成した後、いつかこのエラーが発生します。しかし私はこのように愛した
何らかの理由で、私の場合、次の文字列が機能しました:/ solr /#/ drupal
したがって、完全なURI: http://127.0.0.1:8983/solr/#/drupal
同じ問題が発生していました:Drupal 7.41 Tomcat 8 Solr 4.10.4
したがって、私の回避策は次のとおりです。ステップ1:Solrパス構成-:/ solr /と入力します。これにより、SOLRとDrupalが通信できるようになりました。
ただし、URLはhttpPostまたはhttpGetに使用できないため、インデックスは失敗します。次のエラーが表示されます:サーバーからアイテムを削除中にSearchApiException: "400"ステータス:HTTPメソッドPOSTはこのURLではサポートされていません:HTTPメソッドPOST isこのURLではサポートされていません
手順2: '#/〜cores /'を削除する正しいURIは、余分な文字なしでSOLRにリストされているパスです。驚いたことに、私がcronを実行してTomcatを再起動すると、サーバーは引き続き通信でき、インデックスは設計どおりに実行されました。
注:失敗したインデックス構成を削除し、これらの変更を行った後で再構成する必要がありました。設定:: shrug :::を「記憶」している奇妙なキャッシュのタイプがあるようです。
私のために働いた。そして、私はそれがあなたのために働くことを望みます。それを理解するのに数時間かかりました。
/ r
Solr Host
フィールドに値を入力してみてください:127.0.0.1
およびSolrパスの場合は空のままにできます。
このバグインデックス作成時のみが発生していました。これは、構成の誤りが原因だと私に思わせました。
Drupal\search_api\SearchApiException while trying to
index items on index main:
Solr endpoint https://mysite:443/solr/main/ unreachable
結局のところ、このエラーは実際にhasがサーバーに到達したときに発生する可能性がありますが、SOLRでエラーをスローする何かを実行しようとしました。
[c:main s:shard2 r:core_main_node2 x:main]
o.a.s.h.RequestHandlerBase org.Apache.solr.common.SolrException:
ERROR: [doc=mysite-main-entity:node/10:en]
multiple values encountered for non multiValued
field bs_mycustom_field: [true, true]
カスタムプロセッサのブール値に配列を追加しようとしました!
以前は機能していましたが、許容度の低い部分が変更されました。
私はこれから変更しました:
$mycustomfield->addValue(($data_item['status'] === "1"));
これに:
$mycustomfield->setValues([$data_item['status'] === "1"]);
私のカスタムSearchApiProcessorプラグイン(Drupal 8)では、問題なくインデックス付けされました。
ここでの重要なポイントは、このエラーは誤解を招く可能性があるということです。それはSOLRに達しました!