2016年9月3日土曜日

AzureのAppServiceで MySQL In App (プレビュー)なるものを見つけたので、EC-CUBE3を構築してみた

SYSTEM_KDです。

久々に、AzureのAppServiceで作ったEC-CUBE3環境(非公開)のコンソールを開いてたら、「MySQL In App (プレビュー)」なるものを発見したので、EC-CUBE3の環境を構築してみようと思います。

(試して書く方式ではなく、今試しながら作っていくのでゴールできるか分かりません!)

 

Web + MySQL 環境を作成

では早速。

「+新規」から、「すべて表示」を選択。

image

 

表示されたら、「Web + モバイル」を選択。

image

 

フィルターへ「mysql」とかを入力して、「Web App + MySQL」を探す。

image

 

「作成」を押して、必要情報を入力。

その際、「データベース プロバイダー」は、「MySQL In App (プレビュー)」を選択します。

※ちなみにプランは、無料プランです

image

 

入力できたら、作成。

 

PHPMyAdminへアクセス

環境が作成できたので、メニューの中の「MySQL In App (プレビュー)」を選択してみます。

image

 

上部にある「管理」ボタンを押すと、PHPMyAdmin へアクセスできました。

 

image

 

おぉー

 

・・・

・・・

 

IDとパスワード何ですか??

 

・・・

ググってみた結果、DB名は「azuredb」だということが判明しましたが、肝心のIDとパスワードが何なのかよくわからんです。

(デプロイ用の情報とかを入れてみたけどダメでした)

 

・・・・

・・・・

 

あ、よくみたら、先程の MySQL In App (プレビュー) ページに、接続文字列の環境変数というものがありました。

image

 

ここへ入ってるかもしれないので、確認してみます。

(って、どうやって見るんだこれ)

 

MySQL への接続情報を取り出す

ググってみたら、それっぽいページを見つけたので、参考にしてみます。

https://blogs.msdn.microsoft.com/appserviceteam/2016/08/18/announcing-mysql-in-app-preview-for-web-apps/#mysqlconnect

 

接続情報を取り出している部分だけ、お借りして。

以下のように、xxx.php 処理を作成。

<?php

$connectstr_dbhost = '';
$connectstr_dbname = '';
$connectstr_dbusername = '';
$connectstr_dbpassword = '';

foreach ($_SERVER as $key => $value) {
if (strpos($key, "MYSQLCONNSTR_localdb") !== 0) {
    continue;
}

$connectstr_dbhost = preg_replace("/^.*Data Source=(.+?);.*$/", "\\1", $value);
$connectstr_dbname = preg_replace("/^.*Database=(.+?);.*$/", "\\1", $value);
$connectstr_dbusername = preg_replace("/^.*User Id=(.+?);.*$/", "\\1", $value);
$connectstr_dbpassword = preg_replace("/^.*Password=(.+?)$/", "\\1", $value);
}

print_r("connectstr_dbhost = " . $connectstr_dbhost . "<br>");
print_r("connectstr_dbname = " . $connectstr_dbname . "<br>");
print_r("connectstr_dbusername = " . $connectstr_dbusername . "<br>");
print_r("connectstr_dbpassword = " . $connectstr_dbpassword . "<br>");

 

FTPでアップして、上記のページアクセス!

とれたー!!

 

って、

https://blogs.msdn.microsoft.com/appserviceteam/2016/08/18/announcing-mysql-in-app-preview-for-web-apps/#mysqlconnect

にのってるIDとパスワードじゃないか・・・。

image

 

ということで、このIDとパスワードを利用して、phpMyAdmin へアクセスできました。

 

EC-CUBE3をインストール

MySQLへの接続情報をゲットできましたので、EC-CUBE3をインストールしてみます。

まずは、ソースを配置します。

 

AzureへEC-CUBE3を設置する際、展開したファイルをアップする方法を行っていたのですが、「vendor」のファイル数が多いのもありうちの貧弱ネット環境だと、結構時間がかかるし、かといって圧縮した状態でアップ後に展開してもタイムアウトして上手く展開できなかったりするので、バシッと行くのがないんですよね。。

ということで、今回はローカルGitからアップします。

(それなりに、時間はかかりますが、他の方法より早いし、後々の管理も楽です)

 

まぁ、好きな方法でファイルをアップします。

ちなみに、今回インストールする、EC-CUBEのバージョンは 3.0.10 です。

 

ファイルがアップできたので、インストールしていきます。

 

save image

次へ進む。

 

save image

 

おっと、権限チェックにひっかかりました。

Azure は自動でディレクトリ作れない仕様だったはずですので、手動で指定されたディレクトリを作成します。

save image

 

ディレクトリを作成すれば、次へ進めるようになるので、次は「サイトの設定」を入力します。

(まぁ説明不要ですね)

 

次はいよいよ、データベースの設定です。

save image

 

取得したMySQLの接続情報を設定します。

(ポート番号含め、全部設定)

 

save image

 

おぉ!!あっさり接続できました!!

 

あとは、テーブルの作成が上手くいくか・・・。

(ClearDBの無料枠は、同時接続数に阻まれて簡単には作成させてもらえないんですよね。。)

 

・・・・

save image

 

完了!!!!

 

まとめ

Azureの無料枠というか無料に踊らされて、何回かEC-CUBE3をインストールしましたが、今回はかなりさくっとインストールできました。

しかも、(PHP7にしている恩恵もあるかもしれませんが)無料枠でもそれなりのレスポンスで動作してくれる気がします。

私の感覚としては、SQLiteで動作させたときよりもレスポンスよさ気です。

 

ということで、ちょっと整えたらプラグインのデモ環境用に公開したいと思います!!

 

以上、AzureのApp Service で MySQL In App (プレビュー)なるものを見つけたので、EC-CUBE3を構築してみた でした。

2016年8月22日月曜日

Nexus5XとNexus7のセキュリティアップデート(2016年8月)

SYSTEM_KDです。

 

アップデートは10日以上前に実施済みでしたが、まとめれずこのタイミングとなっておりますが、セキュリティアップデート 2016年8月分です。

 

Nexus5Xセキュリティアップデート

まずは、Nexus5Xのセキュリティアップデートから。

 

update

 

更新サイズは、63.2MB です。

最近、Android関連の脆弱性についてよく見かけるからかどうかは分かりませんが、容量はわりと大きめです。

 

更新後は、

Androidセキュリティパッチレベルが、2016年8月5日

ビルド番号が、MTC20F

となりました。

 

setting

 

 

Nexus7(2013)セキュリティアップデート

続きまして、Nexus7(2013)です。

 

update

 

えっと・・・、説明完全に英語でした。

 

更新サイズは、24.1MB。 こっちもいつもより大きめですね。

 

アップデート後は、

Androidセキュリティパッチレベル、2016年8月5日

ビルド番号は、MOB30X

となりました。

 

setting

 

 

Nexus7、今月もアップデートきてくれましたが、そろそろ終わるんじゃないかと若干心配してたりします。

 

以上、Nexus5XとNexus7のセキュリティアップデート(2016年8月)でした。

2016年8月4日木曜日

EC-CUBE3向けプラグイン、メンテナンスプラグインをリリース

SYSTEM_KDです。

 

EC-CUBE3向けプラグイン「メンテナンスプラグイン」をリリースしました。

 

logo

 

メンテナンスプラグイン

サイトをメンテナンス状態にする場合に利用できるプラグインになります。

作業のため、一時的にサイトをメンテナンス状態にしたいといった場合にご利用頂けます。

 

機能としましては、EC-CUBE3のフックポイントを利用したものになります。このため、サイトにシステムエラーが発生したのでメンテナンス状態にしたいといった場合にはご利用頂けないものになっております。

(EC-CUBEの機能でメンテナンス画面を表示しているので、そもそもEC-CUBEが動作しない状態になったら、プラグインも動作しないという状態です)

 

ですが、逆にEC-CUBEの機能を利用し、メンテナンス画面を表示しておりますので、設定画面からメンテナンスのON・OFFを簡単に切り替えれたり、メンテナンス状態の場合に管理者だけは、フロント側を閲覧可能にする(もちろん管理側は操作可能)といったことが可能となっております。

 

ちなみに、メンテンナンス状態に表示されるページの内容は、HTMLで設定できるようになっております。

 

概要

 

何の変哲もないメンテンナンスプラグインですが、お値段「無料」となっておりますので、宜しければご利用下さい!!

メンテンナンスプラグイン

 

※上記リンクのページ内にて、その他プラグインもまとめてご紹介しておりますので、良さそうなのがありましたら、合わせてよろしくお願い致します!

 

以上、メンテンナンスプラグインのご紹介でした。

2016年7月16日土曜日

Nexus7(2013)のセキュリティアップデート(2016年7月)

SYSTEM_KDです。

 

Nexus5Xのセキュリティアップデート(2016年7月)の記事を公開し終えたら、Nexus7にもセキュリティアップデートがきていたので、アップデート。

 

セキュリティアップデート 2016年7月

 

setting

 

今月の更新サイズは、

・・・

・・・

・・・

 

何故に英語!?

 

なぜだか、どうしてだか説明が英文でした。

言語設定変わった?かと思いましたが、どう見ても更新サイズとか、インストールボタンとか日本語です。

(謎

 

気を取り直して、今月の更新サイズは、12.1MB

 

アップデート後は、

Android 6.0.1

Androidセキュリティパッチレベル 2016年7月5日

ビルド番号 MOB30P

になりました。

 

update

 

以上、Nexus7(2013)のセキュリティアップデート(2016年7月)でした。

EC-CUBE3向けプラグイン、そのままカートイン リリース

SYSTEM_KDです。

 

EC-CUBE3向けプラグインの10本目となるプラグイン、「そのままカートイン」をリリースしました!!

[ そのままカートイン ]

icon

 

そのままカートイン プラグイン

そのままカートイン は、商品をカートに入れる際のフローをスッキリさせるプラグインです。

 

通常、商品をカートに追加しようとすると、一覧で商品を探し、カートに追加したい商品の商品詳細画面を表示して、「カートに入れる」ボタンを押してカートに入れる必要があります。

 

スムーズな流れではありますが、続けて他の商品をカートに追加したい場合は、再度、商品一覧ページを表示する必要があります。

 

そんな時、このプラグインを利用すれば、商品一覧から「そのまま」商品をカートに入れいることができます。

 

一覧から商品をそのままカートインできるプラグインだから、「そのままカートイン」です。

 

スライド2

 

商品(規格なし)を一覧からカートイン

そのままカートイン を導入すると、商品一覧の各商品に「カートに入れる」ボタンが追加されます。

規格の設定がない商品の場合は、追加された「カートに入れる」ボタンを押すだけで、商品をカートに追加することができます。

 

スライド3

 

あとは、カートブロック等から、カートに進んで通常通りのフローで購入完了です。

(導線としては、もう少し分かりやすい位置へカートに進むボタンを用意してやるとより良さそうですね)

 

商品(規格あり)を一覧からカートイン

規格の設定がない商品の場合は問題ないのですが、規格のある商品の場合は、規格を選択させる必要があります。

このプラグインでは、規格の選択も商品一覧から行い、カートに追加できるようになっています。

 

スライド4

 

 

規格の設定がある商品をカートへ追加しようとすると、商品一覧画面にモーダル画面で、規格を選択できる画面が表示されます。

この画面で、規格を選択して、「カートに入れる」ボタンを押下すると、商品がカートに追加されます。

カートに追加された後は、再読み込みされることなく、もとの一覧画面へ戻りますので、続けて他の商品をスムーズにカートに追加することができます。

 

操作動画

実際の操作動画になります。

 

 

そのままカートイン プラグイン

 

ということで、よろしければ購入よろしくお願い致します!!