2

私はAmazonawsにbeanstalkサーバーをインストールしました。また、SOLRサーバーを実行している別のインスタンスがあります。

私のphpスクリプトでは、次のモジュールを使用しています:http: //php.net/manual/en/solrclient.adddocument.phpSOLR データベースにクエリを実行します。

Beanstalkにインストールするには、ec2インスタンス(ec2-user)にログインします。このモジュールはpeclを使用します

ec2シェルの場合:

sudo pecl install -n solr

完了すると、peclはextension = solr.sophp.iniに追加されます

この時点から、phpスクリプトを実行すると、次のようになります。

PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/solr.so' - /usr/lib/php/modules/solr.so: undefined symbol: curl_easy_getinfo in Unknown on line 0

私はこの問題に関する他の投稿をほとんど見つけませんでしたが、ほとんどが諦めたか、不完全/不明確な解決策を与えました。

4

2 に答える 2

1

solrphpクライアントをawsbeanstalkにインストールする方法-(このphpクライアント-http ://php.net/manual/en/solrclient.construct.php

  1. Beanstalkサーバーが稼働していると仮定します
    • Beanstalkによって作成されたec2インスタンスにログインします
  2. sudo pecl install -n solr->(pecl経由でのインストール中にxmlcurl、libcurのプロンプトが表示されたら、ロケーションフォルダーとして/ usr / libを追加します)
  3. php.iniから「extension=solr.so」を削除します->(root / etcにあります)
  4. 1行でファイル「solr.ini」を追加=(root / etc / php.dに配置)
  5. sudo/etc/init.d/httpdrestart->サーバーを再起動します
    • solrサーバーのポート8443:8983がbeanstalkに対して開いていることを確認してください。
  6. 利益。
  7. これが実行されているので、これを実行してsolr 4.0サーバーに接続すると、正しく機能しないことがわかります(commit-> waitflush argは4.0で削除されましたが、クライアントにはまだ存在しています)
  8. 私には利益がない...
于 2013-01-01T09:38:41.023 に答える
0

ヤロンの返事私にはうまくいきませんでした。

しかし、以下はそうしました。

私は単に追加しました

extension=curl.so
extension=json.so
extension=solr.so

php.iniの最後にあり 、問題なく動作しました。

注:私はphp5.5.12を使用しています

于 2014-06-11T13:33:02.343 に答える