マーケットプレイスに接続できません。

2015年2月7日 at 7:16

エクストリムレンタルサーバ(ビッグプラン)上において、
concrete5 5.7.2.1
MySQL 5.5.36
PHP 5.3.23
の環境でサイトを構築しています。
Firefox35.0.1です。

昨夜新しいアドオンを使ってみたいと思い管理画面の「concrete5を拡張」を見に行くと、

「このサイトは現在、concrete5 マーケットプレイスに接続されていません。
concrete5マーケットプレイスとの接続ができませんでした。サーバーに、curlなどの必要ライブラリがインストールされているかどうかを確認して下さい。 」
(以下私のプロジェクトページヘのリンク)

と表示されるようになっていました。(このエラーメッセージはコピペしたわけではないので一言一句まで同じかは確実ではないですが大意は間違ってないはずです)

いつ発生した現象かは確認できません。サイト構築し始めた2週間ほど前はちゃんと接続できていてテーマもここからインストールできていたのですが、時間を置いて見に行ってみるとエラーが出るようになっていました。この間これに気づかないくらいマーケットプレイス関連は使っていません。

同時に「再接続する」というボタンが表示されていますのでこれを選ぶと
Your site is already connected to the concrete5 marketplace.
と出ます。(繋がってないよってエラーが言うから再接続してるのに、もう繋がってるよって言われるという…)

検索した限りでは
http://concrete5-japan.org/community/forums/bug/post-1238/
フォーラムのこのスレッドと症状が酷似しているのですが、

# PHP Extensions
apache2handler, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dbase, dom, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, imagick, imap, ionCube Loader, json, ldap, libxml, mbstring, mcrypt, mhash, mysql, mysqli, ncurses, openssl, pcre, PDO, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, Reflection, session, shmop, SimpleXML, soap, sockets, SPL, standard, sysvmsg, sysvsem, sysvshm, tokenizer, wddx, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend Guard Loader, zip, zlib.

とcurlは入っていますし、PHPのバージョンも

# PHP Version
5.3.23

です。

次に

http://concrete5-japan.org/community/forums/chat/post-5532/
のやりとりを参考に

MARKETPLACE_SITE_TOKEN と MARKETPLACE_URL_TOKEN

のレコードを消去し、キャッシュを消去して再接続を試みました。

今度はエラーメッセージが

You must specify a site name.
Your site token must be 64 characters.

と変わっただけで引き続き接続できません。
これ以上はお手上げなのですが、どなたかこれを解決する方法をご存知ではないでしょうか…
宜しくお願いいたします。

タグ:

Re: マーケットプレイスに接続できません。

2015年2月7日 at 7:36
一点、確認させてください。

マーケットプレイスは、以前は接続できていたんですか?
 

Re: マーケットプレイスに接続できません。

2015年2月7日 at 7:39
おはようございます。
はい、以前は確実に接続できていたと言い切れます。
今使っているテーマはそこからインストールしたものですし(^_^;)
 

Re: マーケットプレイスに接続できません。

2015年2月7日 at 7:57
おっと・・・。
削除されたトークンは、保存されていますか?

以前も接続できているのなら可能性は concrete5.org と、サーバー側のどちらかですね・

■ 以前、マーケットプレイスに接続できていたが、今は接続できていない場合の原因について

concrete5.org では、ちとサーバーのメンテが起こっているので、その時間とバッティングすれば接続不能になります。なので、接続できていない時間にhttp://concrete5.org に訪問してみてメンテナンスモードであるかないかを見てみる必要があります。

そしてもうひとつは、サーバー側でなにかメンテナンスを行って、エラーメッセージにある curl が使えなくなったということが原因にあると思うので、それは、サーバー会社に、マーケットプレイスが接続して使えた時間から今までの間に何かサーバーの設定を変更したか書くに飲します。


■ concrete5.org 上での Project の設定

TOKEN を削除して元に戻せない場合は、 concrete5.org 上で Project を管理しているところから、Project を削除して再登録する必要があります。

http://www.concrete5.org/profile/projects/

ここから、右メニューの「Edit Project」をクリックして
Delete Project でプロジェクトを削除してください。

それから、再び concrete5.org に登録できるようになります。

この作業はサイトの引越をしてドメインを変更した時にも同じく必要です。



■ 手動で行う方法

他にも、アドオンを手動でインストールする方法があります。
それは concrete5.org のマーケットプレイス上で行います。

マーケットプレイスでアドオンを選択、もしくは購入します。

concrete5.7 の新しいアドオンページでは、無料ブロックの場合、購入ボタンの隣に「Download Archive」ボタンが表示され、購入手続きを踏まなくても直接ダウンロードできます。

アドオンを購入した際に、Project に割り当てる画面で、Project に割り当てないで、
Save を選びます。

自分のプロフィールページに行き、右側の「Transaction」から「License」を選びます。
もしくは
http://www.concrete5.org/profile/orders/
のリンクをクリックすると、ログインした状態だとすぐにたどり着けます。

そこから、さきほど購入したアドオンを見つけて「Download Archive」をクリックしてZIPファイルをダウンロードして下さい。

ZIP ファイルをダウンロードしたら、解凍してください。

解凍したファイルを /paackages/ フォルダにアップしてください。

後は、concrete5 の管理画面の「インストール」という「concrete5 を拡張」の右にあるリンクをクリックすると、インストール画面に行き、インストール作業を行えます。

URL でいうと
[自分のconcrete5サイト]/index.php/dashboard/extend/install/
です。

最悪の場合は、上記のように手動インストールでお願いします。
 

Re: Re: マーケットプレイスに接続できません。

2015年2月7日 at 19:02
返信ありがとうございます。
トークンは保存していません、すみません。

サーバー会社にサーバーの設定を変更したかは現在問い合わせています。

>TOKEN を削除して元に戻せない場合は、 concrete5.org 上で Project を管理しているところから、Project を削除して再登録する必要があります。

ありがとうございます。
この作業はしてみたのですが、再度接続できるようにはなりませんでした。
Projectsの中身は空になり
You have not connected any sites to the concrete5 community.
となっていますが、私のサイトの方から再度接続しようとすると

You must specify a site name.
Your site token must be 64 characters.

というエラーが引き続き出ます。

>最悪の場合は、上記のように手動インストールでお願いします。
確かに最悪の場合はそうするしかないと思うのですが、この先ずっと私が管理し続けるかどうかわからないため、出来ればマーケットプレイスは機能するようにしておきたいのです(^_^;)

それと明確な原因があったり、レンタルサーバーの制限上最初から使えないとわかっていて手動インストールというのは納得がいくのですが、たしかに動いていたものがなぜ動かなくなるのかまったくの原因不明、対処方法も不明のままで終わってしまうと少し気持ち悪いというか、concrete5で構築して大丈夫なのだろうか?と(^_^;)
 

Re: マーケットプレイスに接続できません。

2015年2月7日 at 20:57
エクストリムサーバーをお試し契約してインストールしてコミュニティに接続を試してみました。結論から申しますと、エクストリムサーバーのIPアドレスが、concrete5.orgが使用しているファイアウォール(CloudFlare WAF)のブラックリストに登録されており、ブロックされているようです。対処方法としては、エクストリムサーバーの管理者に症状を説明して対応を依頼するか、別のIPアドレスのサーバーに乗り換えるか、になると思います。IPアドレスを共有するレンタルサーバーでは、同居人がスパムメールを送ったりマルウェアに感染したりすることで、巻き添えを食うリスクがあります。
 

Re: マーケットプレイスに接続できません。

2015年2月7日 at 21:22
もっと詳しく説明すると

・おそらくエクストリムサーバーで契約されている別の方のサイトがハッキングされている
・ハッキングされているサイトが、なにかスパムとか DDoS 攻撃を仕掛けている
・セキュリティサービスを提供している CloudFlare が、エクトリムのサーバーを危険なサーバーとしてアクセスをブロックしている
・結果としてエクストリムの共用サーバーを利用している全員のサイト (同じIPアドレスを使用しているサイト) が危険なサイトとして認識されている
・CloudFlare のサービスを利用している concrete5.org も同じくエクストリムのサーバーを危険なサーバーとして認識しているのでアクセスをブロックしている

です。

なので、解決策は

・エクストリムさんに解決をしてもらう
  ・エクストリムに連絡してウイルスが感染しているサイトを隔離してもらう
  ・隔離後に CloudFlare に連絡してブラックリストから解除してもらう
・サーバーを他に移す

の2案となります。

同じIPアドレスを沢山のサイトで使用している共用サーバーではこういうことが起こってしまいます。
値段の高い共用サーバーであれば IP アドレスも別・・・ということもありますので、共用サーバー全部が同じ IP を使っているわけではないですが・・・。

宜しくお願い致します。
 

Re: マーケットプレイスに接続できません。

2015年2月8日 at 2:08
hissyさん、katzさん、詳しい回答本当にありがとうございます。よく理解できました。
なるほど、これでは私では原因不明なわけですね…
私とレンタルサーバー、concrete5.orgの3者以外が絡むケースは想定していませんでした(^_^;)

エクストリムさんにサーバー設定を変更したかどうかについて問い合わせたところ、やはり設定を変更したりは特にしていないという回答でした。引き続きこのスレッドのURLをお伝えして対応をお願いしています。

サーバーを他に移すという事も選択肢だと思いますが、同じように多くのユーザがIPアドレスを共用する方式のレンタルサーバ業者さんであればどこでもこのリスクはありますよね(^_^;)

ところで原因がこういうことであればトークンの削除といった対策は関係ないという事になると思うのですが、すでに
MARKETPLACE_SITE_TOKEN

MARKETPLACE_URL_TOKEN
のレコードを削除してしまった事に対しては特に副作用というかデメリットはありませんか?
 

Re: マーケットプレイスに接続できません。

2015年2月8日 at 12:51
すでにトークンを削除してしまったことについては問題ありません。マーケットプレイスに再接続すれば新しいトークンを取得できます。
 

Re: マーケットプレイスに接続できません。

2015年2月21日 at 7:09
この件を concrete5.org にも知らせていたのですが、ファイヤーウォールの設定を変えたみたので、もう一回試してみてほしいと連絡がありました。お手数ですが可能であればお願いいたします
 

Re: Re: マーケットプレイスに接続できません。

2015年6月4日 at 20:04
私もドメインをテストから本番用に変更、サーバーディレクトリを変更後、同様の問題に悩まされていました。Concreteのサポートに連絡してもブラックリスト登録されていないと言われていたのですが、先ほど解決出来ましたので、報告させていただきます。

Configテーブルの
marketplace.token
marketplace.url_token
の2行を削除して再度試してみたらうまくいきました。

古いURLで発行されたトークンが問題だったようです。