今更CentOS5+PHP5.1な環境にphpunitを入れる
- 2015/09/16
- aikawa
保守等で現役だったりする、CentOS5+PHP5.1。
テストでSelenium(Selenese)を使うのに、外部サーバを使うのも面倒なので、CentOS5+PHP5.1な環境にphpunitを今更ながら入れてみました。
今のphpunitはPHP5.1では使えないので、epelのパッケージを利用してみます。
yum -y install epel-release
yum -y install php-pear-PHPUnit
pear upgrade pear
pearを実行しようとするとエラー。何故かパスが通っていないので、php.iniへ追加。
include_path = "[現在のPath]:/usr/share/pear"
これでpearはOK。
古いphpunitだとSeleniumの実行にインクルードが必要らしいので、
Selenium IDEからPHPUnit形式でエクスポートしたtest.phpに一行追加。
https://phpunit.de/manual/3.3/ja/selenium.html
require_once 'PHPUnit/Extensions/SeleniumTestCase.php'; // 追加行
class Example extends PHPUnit_Extensions_SeleniumTestCase
実行しようとするとSeleniumのクラスがcould not be foundになります。
phpunit test.php
phpunit3.4辺りでfixしてるようなので、githubから3.4を持って来て上書きしてしまいます。
https://github.com/sebastianbergmann/phpunit/tree/3.4
# rpm経由のphpunitを退避
mv /usr/share/pear/PHPUnit /usr/share/pear/PHPUnit-3.3.5
mv /usr/bin/phpunit /usr/bin/phpunit-3.3.5
# 3.4で上書き
unzip phpunit-3.4.zip
cd phpunit-3.4
mv PHPUnit /usr/share/pear/
cp phpunit.php /usr/bin/phpunit
実行。
取りあえずこれで目的のSeleniumは動いたので、良しとします。
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]
こんな感じになりました。
RoundCube用にCentOSのpostfix+dovecotで簡単なテスト環境を作る
- 2015/07/22
- aikawa
PHP カンファレンス福岡に(ry
- 2015/06/28
- shun
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のバージョンアップも忘れずに!)