投稿者のアーカイブ

baserCMSを3.0.9へアップデートしました(あっさり)
おひさしぶりです。muraveです。
恒例(?)のbaserCMSアップデート話です。
3.0.7にアップデートする時にスマートURLをオンにした状態ではアップデート処理を実行できなかったり(baserCMSを3.0.2から3.0.7へ。ところでカテゴリ名ってまだ簡単に取れないんです?)、その後.htaccesをいじっていたり(URLを統一したくなったので.htaccessで301リダイレクト)したので、不安がありまして、時間が取れる状況になってから作業しました。
リリースから約一週間、先ほど作業したところ
公式に書いてある手順であっさりアップデートできました!
ヽ(=´▽`=)ノばんざ〜い ←絶対何かで引っかかると思っていた人
どんどん扱いやすいCMSになっていると感じました。
そうそう、管理ページのレイアウトが少しかわっているのでアップデート直後少し表示が崩れて見えたというのがありましたがブラウザのキャッシュの問題で、リロードしたらなおりました。






OSC2015 Fukuoka 参加セミナーでのメモ
2015年10月3日(土)に九州産業大学で開催された オープンソースカンファレンス 2015 Fukuoka (http://www.ospn.jp/osc2015-fukuoka/)に参加しました。
今回はセミナー中に書いたメモを(ほぼ)そのままだしてしまおうかと思います(手抜き)。だんだんメモが少なくなっていくのがリアルですね。
Open Compute Project についての第3弾 〜オープンソース化した Facebook のサーバとデータセンタとネットワーク
担当:Cobalt Users Group/Project BlueQuartz
講師:伊藤 正宏
- スケールメリットを活かすための設計。
- データセンターは全世界電力の1〜2%を消費。電力消費が最大の課題。
- 涼しいところでエアフロー最優先のデータセンター、サーバー。
- すかすかのサーバー。エアフロー、修理(部品交換)簡単。
純水ミストでの冷却はコスト高で中止、といったネタもありました。その夕方の弊社社長のツイートが(たぶん偶然)同じく純水ぶっかけネタだったのでなんとなく確保。
某所の砂にまみれたマザボ数枚、高圧洗浄機で洗って純水で流すかな(ヒドイ
— minemaz (@minemaz) October 3, 2015
PG-REXで学ぶPacemaker運用の実例
担当:Linux-HA Japan Project
講師:東 一彦(Linux-HA Japan Project)
- 「PG-REX利用マニュアル」が存在する。
- crm_mon -rfA おすすめ
- Pacemaker1.1はctr+D押下でヘッダ表示消えるそうな。へーへーへー
- Act側Sby側でログは異なる。故障時は両方みないとわからないことが多い。
- 資料公開されてる。
- vip-master故障時、故障した方のPacemakerを一旦停止するのが良い。
- PG-REX運用補助ツール
- pg-rex_slave_start 修理したサーバーをスレーブに組み込み
- pg-rex_switchover マスターとスレーブを入れ替え
- stonith-helper スレーブ側が10秒待つ
弊社のお客さんでPG-REXな構成で運用しているところがあるんですがPG-REXと呼ばれる前に構築したものだったり。PG-REX運用補助ツールいいなぁ。つかえるのかなぁ。
【飲食OK】Samba4を「ふつうに」使おう!Samba4によるファイルサーバ構築テクニック
担当:日本Sambaユーザ会
講師:たかはしもとのぶ
- SeLinux活かして運用するの大変そう。
- スライドシェアに資料
Firefox OS から眺める HTML5 アプリ開発最前線
担当:Mozilla Japan
講師:清水 智公
- ロジックはJavaScriptでしか書けない。それは良し悪しだが経験した面倒なところ。
- コールバック地獄
- Promiseを使った非同期処理
- コードが読みやすくなる
- 待ちも簡単に
- テストが容易になる
- Promiseを使った非同期処理
- コールバック地獄
次世代ECプラットフォーム「EC-CUBE 3」に迫る!「3」で何が変わったのか!?
担当:EC-CUBE九州ユーザーグループ
講師:金 陽信
- 2系の問題
- プラグイン同士の競合
- 安心して使えない
- カスタマイズが必要になり導入コストが高くなる
- セキュリティ面の課題
- 手順が複雑でバージョンアップしにくい
- 拡張性の課題
- WEB中心のソフトウェア
- 今後、スマホアプリ対応などが困難
- プラグイン同士の競合
- 2系は全部入り
-
3系はコアだけ残してプラグイン対応。
- Symfony Components採用。
- フレームワーク
- Silexフレームワーク。
- Doctrine ORM
- Twig
- フィーチャーフォンを切ってすっきり。
EC-CUBE3、ERMasterで作ったER図も公開されてるんだ。すばらしい。 #osc15fk
— murave (@murave) October 3, 2015
次期baserCMSの新機能と今後の展望
担当:baserCMSユーザー会
講師:江頭 竜二
http://www.slideshare.net/ryuring/baser-cms-53530309
- 予定されてる「統合コンテンツ管理システム」いいぞー。
我流さん喜ぶ。僕も喜ぶ。 https://t.co/BVWOOpvdGD
— murave (@murave) October 3, 2015
ところで、baserCMSのベースとなっているCakePHP、2系についてはPHP7で動かないのでは?(予約語が増えてぶつかっちゃったので)という問題があるわけですが、
baserCMSのCakePHP3対応予定は2017年。CakePHP3対応後はPHP7で動くはず。レンタルサーバのPHPバージョン対応状況とかも影響しそうではある。
— murave (@murave) October 3, 2015
オープンソース!Open Flow 1.3 対応!日本発のネットワークスイッチOS「Lagopus Switch」
担当:Lagopus Users Community
講師:日比 智也(Lagopus Users Community)
- Lagopus(OpenFlow スイッチ)はいろいろなことができるが、セッション(ステート)は持てない。
- ソフト屋としてはパフォーマンスチューニングの話が面白かった。
- そのまま実践することはないと思うけど(レイヤーが違うので)。
以上、現場(のメモ)からお届けしました。






URLを統一したくなったので.htaccessで301リダイレクト
自社サイトにWOVN(https://wovn.io)を導入してみました。
http://www.lancard.com/ にアクセスすると右下にウィジェットが表示されていると思います。今のところほぼ機械翻訳なのでご笑覧ください(ランカードコムが orchid card com と訳されているところに気づいたら直したくらい)。
そんなわけでWOVNの管理ページを見ていたら http://lancard.com/ でのアクセスや http://www.lancard.com/work/index といったindex付きのアクセス(拡張子無しのindexなのはBaserCMS絡みです)が結構あって、URLを統一しないとアカンなぁと思ったのでした。SEO的にも統一したほうが良いとは聞きますし。
Apacheで動かしてるので.htaccessでどうにかします。
www付きに統一して、indexは無しという方針。
RewriteEngine on
#www付きに統一
RewriteCond %{HTTP_HOST} ^lancard\.com
RewriteRule (.*) http://www.lancard.com/$1 [R=301,L]
#indexなしに統一
RewriteCond %{THE_REQUEST} ^.*/index
RewriteRule ^(.*)index$ http://www.lancard.com/$1 [R=301,L]
#BaserCMS
RewriteBase /
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
こんな感じになりました。






PHPカンファレンス福岡2015 に参加しました
murave@プレモル1本目です。
2015年6月27日に開催された PHPカンファレンス福岡2015 に参加しました。
私が参加したのは以下の通り。
・開会式・スポンサー紹介
・基調講演「全てを結ぶ力」(郡山 昭仁 @koriym)
・あなたと秘伝のタレ mid 2015 (石田 絢一 @uzulla)
・10年超えるサービスのphpバージョンを4から最新にする話 (小田 知央 @linyows)
・CakePHP3ウォークスルー (長谷川 智希 @tomzoh)
・CodeIgniter update (宮川 貴子 @NEKOGET)
・Laravel5を使って開発してみた (野田 健夫)
・Phalcon PHPフレームワーク Sense of Use (近藤 和宏)
・CakePHPを業務で使ってみた(7年ほど) (小山 健一郎 @k1LoW)
・インフラエンジニアからレガシーPHPへのレイヤーアップ (山下 和彦)
・レイヤードアーキテクチャを意識したPHPアプリケーションの構築 (新原 雅司 @shin1x1)
・ライトニングトーク
・閉会式






PHPカンファレンス福岡2015 After Hack にいます
Fusicさんで開催されている『PHPカンファレンス福岡2015 After Hack』にいます。
https://fusic.doorkeeper.jp/events/26357
Fusicさん提供の電源、ネットワーク、コーヒー、ビールで『PHPカンファレンス福岡2015』のブログを書こうと思ってやって来ました。






Future Sync Vol.5 に参加しました
2015年5月16日に開催された Future Sync Vol.5 に参加しました。
あれからもう一週間たってしまいました。遅くなりましたが感想などを。
私が参加したセッションは以下の通り。
・複雑に絡み合ったユーザーの思いを「ともにデザイン」するインクルーシブデザイン (平井康之)
・Blockchain 〜ビットコインを支える技術〜 の現在と未来 (栗元憲一)
・ウェアラブルからシンギュラリティへ (塚本昌彦)
・脳がシビれる心理学 (妹尾武治)
・世の中をザワつかせる方法 (眞鍋海里)






baserCMS 3.0.7 でカテゴリ名、簡単に取れました
muraveです。
チョイ前の記事
『baserCMSを3.0.2から3.0.7へ。ところでカテゴリ名ってまだ簡単に取れないんです?』
で、タイトル通りの疑問を書いてましたら親切な匿名の方からコメントで情報を頂きました。
曰く、$category = $this->BcPage->getCategory(); echo h($category[‘title’]);
$categoryへの代入等はこちらで追加させてもらいましたが、確かにこれです!
ありがとうございます。
てなわけで、getCategory関数を使用してのカテゴリーのタイトル取得は以下のようになりました。
//カテゴリーのタイトルを取得
$category = $this->BcPage->getCategory();
$product_title = $category['title'];
真っ当感、ありますな。
ところで、このgetCategory関数のリファレンス、http://wiki.basercms.net/関数リファレンス/getCategoryにあったんですが、用例が変ですね。
BcPage->getCategory() ?>
でカテゴリー名が出力されるように読めるんですが、getCategory関数の返り値はarrayですのでそのままechoしちゃだめです。






『Laravelエキスパート養成読本』献本いただいたのでキャンプへGO!

vagrant rsync-auto で rsync__exclude を変更しても反映されない場合
murave@歯医者さんから定期チェックの電話がかかってきたのでチャッチャと書かねば、です。
Vagrantで開発環境を整えていたのですが Synced Folder での権限周りで引っかかってしまいました。
それで、今頃、Rsync Synced Folder に気づいたのですが、いいですねコレ。
rsyncで同期されるので、開発機のパワー不足でクラウド環境にサーバーを建てて開発してる方も使えるはず。オススメです。
こちらの詳細は検索していただくと『Vagrant 1.5 で追加された Rsync Synced Folder が良い – Shin x blog』やQiitaの記事など良い情報がみつかるかと思います。
さて、本題です。Rsync Synced Folder で開発を始めると vagrant rsync-auto コマンドで自動でのrsync同期を行うのですが、rsync__excludeで指定した同期対象外設定を変更してもなぜか反映されないという現象に遭遇しました。
これに関する情報が日本語では見つからなかったのでメモを残しておきます。
Previous Rsync Exclude setting caused duplicate rsync on rsync-auto #4567
ここに同様の現象に遭遇している方々がいらっしゃいます。そしてthePanzさんが以下の解決策を提示しておられます。
vagrant halt
rm .vagrant/machines/default/virtualbox/synched_folders
vagrant up
同様の現象にあったらお試し下さい(Vagrantのバージョンアップも忘れずに!)






baserCMSを3.0.2から3.0.7へ。ところでカテゴリ名ってまだ簡単に取れないんです?
muraveです。どもども。
時間ができたので自社サイトのbaserCMSを3.0.2から3.0.7へアップデートしました。今朝。
残念ながら順調にはいかなかったので自分のためにもメモを残しておこうと思います。
ところでカテゴリ名ってまだ簡単に取れないんです?(前振り)
■ アップデート処理を実行出来なかった件
スマートURLをオンにした状態ではアップデート処理を実行できませんでした
ギニャーーーー!
WordPress(ココ)と同居していることもあって.htaccessにいろいろと設定を追加しているせいかPOST先のページにアクセスできなかった模様。
スマートURLについて手作業でオフ、.htaccessを調整して実行しました。
/app/config/install.php の次の行をコメントアウト。
//Configure::write('App.baseUrl', '');
/app/webroot/.htaccess の一部をコメントアウト
RewriteEngine on
RewriteBase /app/webroot
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
もちろん実行後、手作業で元に戻しました。
■ レイアウトの中でカテゴリ名を取得していたページが全滅
どうかんがえてもイリーガルなことをやっていたので文句はいえないのですが、参りました。
イリーガルなことってのはこういうこと。
//カテゴリーのタイトルを取得
$product_record = $this->BcBaser->PageCategory->find('first',array(
'fields' => array('title'),
'conditions' => array('name' => $product_category),
'recursive' => -1,
));
$product_title = $product_record['PageCategory']['title'];
3.0.7のコードを調べた所 $this->BcBaser を $this->Page に変えたら行けそうな気がしたのですが、気のせいだったのでさらにイリーガル感が増してしまいました。
//カテゴリーのタイトルを取得
$page_category = new PageCategory(false, null, 'baser');
$product_record = $page_category->find('first',array(
'fields' => array('title'),
'conditions' => array('name' => $product_category),
'recursive' => -1,
));
$product_title = $product_record['PageCategory']['title'];
本当はこんなことしたくないんです! カテゴリ名って簡単に取れるようになってるんでしょうか?




