Zend Framework 1.9.3PL1+zfコマンド

インストールしてみた。

環境

インストール

$ cd /tmp/
$ wget https://packages.zendframework.com/releases/ZendFramework-1.9.3PL1/ZendFramework-1.9.3PL1.tar.gz
$ tar zxvf ZendFramework-1.9.3PL1.tar.gz
$ sudo mv ZendFramework-1.9.3PL1 /usr/share/php/

# sudo vi php.ini
include_path = ".:/usr/share/php/ZendFramework-1.9.3PL1/library"

$ sudo /etc/init.d/httpd restart

コマンドラインツールを使いたい

プロジェクトを作成 - Zend Framework Quick Start - Zend Framework
ここに書かれているzfコマンドを使いたい。

$ sudo ln -s /usr/share/php/ZendFramework-1.9.3PL1/bin/zf.sh zf

Zendバージョン確認。

$ zf show version
Warningたくさん
Warningたくさん
Warningたくさん
Warningたくさん

ググると同じような現象になっていた方がいらっしゃいました(参考1)。
バージョン情報は最後に出力されましたが気持ち悪い。
何か解決方法ないかなーと再度ググる
たしか「Zend Abstract 90 Warning」でググったはず。
そして参考2に辿り着き、以下の対応をしました。

$ emacs /usr/share/php/ZendFramework-1.9.3PL1/library/Zend/Tool/Framework/Loader/Abstract.php

# L90
include_once $file;
↓
if (!is_dir($file)) {
    include_once $file;
}

zfコマンドを使う。

$ zf create project hoge

tomcat 8 と solr 4.10.3

solrを使いたいので。インデキシングとかはまた今度。付属サンプルデータが検索できるまで。

環境

JDKインストール

$ cd /tmp
$ wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jdk-8u25-linux-x64.rpm

$ md5sum jdk-8u25-linux-x64.rpm
6a8897b5d92e5850ef3458aa89a5e9d7  jdk-8u25-linux-x64.rpm

# open jdk version check
$ java -version
java version "1.7.0_71"

# remove openjdk
# もしかしたら削除しないほうがいいかも?
# alternativesコマンド使えば大丈夫?やるときはこれまでのものに影響がでないよう気をつけて。
$ sudo rpm --erase java-1.7.0-openjdk

# version check (done remove openjdk)
$ java -version
java version "1.6.0_33"

# install oracle jdk
$ sudo rpm -Uvh jdk-8u25-linux-x64.rpm

# java version change
$ sudo alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_25/jre/bin/java 200000

# java version check
# 一旦ログアウトして、再度ログインした時にも同じようになることを確認する
$ java -version
java version "1.8.0_25"
$ javac -version
javac 1.8.0_25

Tomcatインストール

$ cd /usr/local
$ sudo wget http://mirrors.viethosting.vn/apache/tomcat/tomcat-8/v8.0.15/bin/apache-tomcat-8.0.15.tar.gz
http://tomcat.apache.org/download-80.cgi のCoreのtar

$ md5sum apache-tomcat-8.0.15.tar.gz
a72c1057e501e50fc4033087a105dfd7  apache-tomcat-8.0.15.tar.gz

# 解凍
$ sudo tar zxvf apache-tomcat-8.0.15.tar.gz
# rename
$ sudo mv apache-tomcat-8.0.15 tomcat

# 管理画面設定
# バックアップ
$ sudo cp tomcat-users.xml tomcat-users.xml_bk
# edit
$ sudo vi tomvat-users.xml
  <role rolename="manager-gui"/>
  <role rolename="admin-gui"/>
  <role rolename="solr-gui"/>
  <user username="****" password="****" roles="manager-gui,admin-gui,solr-gui"/>

# port
$ sudo vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
# restart
$ sudo service iptables restart

# 起動
$ cd /usr/local/tomcat/bin
$ sudo ./startup.sh

# access
http://***.***.***.***:8080/
# 設定したユーザーネーム、パスワードで閲覧できることも確認
http://***.***.***.***:8080/manager/html

# 停止
$ sudo ./shutdown.sh

Solrインストール

# mirror一覧
http://www.apache.org/mirrors/

# get
$ cd /usr/local
$ sudo wget http://ftp.jaist.ac.jp/pub/apache/lucene/solr/4.10.3/solr-4.10.3.tgz

# md5
$ sudo wget http://www.eu.apache.org/dist/lucene/solr/4.10.3/solr-4.10.3.tgz.md5

$ cat solr-4.10.3.tgz.md5
84ecc4828ed599d906d7343a71d6912f *solr-4.10.3.tgz
$ md5sum solr-4.10.3.tgz
84ecc4828ed599d906d7343a71d6912f  solr-4.10.3.tgz

# 解凍
$ sudo tar zxvf solr-4.10.3.tgz

# rename
sudo mv solr-4.10.3 solr

# make solr home
$ cd /usr/local
$ sudo mkdir test
# exampleをコピー
$ sudo cp -R example/solr test/sample

# tomcatに設定を。
$ cd /usr/local/tomcat/conf
# バックアップ
$ sudo cp server.xml server.xml_bk
$ sudo vi server.xml (Hostタグ内)
        <Context path="/solr" docBase="/usr/local/solr/dist/solr-4.10.3.war" debug="0" crossContext="true" >
          <Environment name="solr/home" type="java.lang.String" value="/usr/local/solr/test/sample" override="true" />
        </Context>
http://d.hatena.ne.jp/knaka20blue/20131024/1382616625

# jar file copy
$ sudo cp /usr/local/solr/example/lib/ext/*.jar /usr/local/tomcat/lib/

# tomcat 起動、ブラウザ確認
$ cd /usr/loca/tomcat
$ sudo ./startup.sh
http://***.***.***.***:8080/

付属サンプルデータで試す

# サンプルデータコピー
$ sudo cp -R example/exampledocs test/
$ cd /usr/local/solr/test/exampledocs
# postファイルバックアップ
$ sudo cp post.sh post.sh_bk
$ sudo vi post.sh
#URL=http://localhost:8983/solr/update
URL=http://***.***.***.***:8080/solr/update

# Solr へpost (tomcatは起動させておく)
$ sudo ./post.sh *.xml
post結果がコンソールに出力される

# ブラウザで確認する。
http://***.***.***.***:8080/solr/#/collection1
左下のQueryを選択、パラメータqにipodと入れてExecute Queryをクリック。
結果が表示される。

OctoberCMSインストールしてみた

Laravelの話をしていたらOctoberCMSを紹介されたのでインストールしてみた。
やっとこさできました。

インストール

参考2のようにcomposerで。

$ composer create-project october/october october dev-master

app/config/app.phpはurlを変えるくらいでいいかなと。
app/config/cms.phpもそのままで。

$ php artisan october:up

ん?なんかコンソールに警告でたぞ。
まあいいや。参考3にあるようにアクセスしてみよう。
http://***.***.***.***/~mfham/october/index.php
エラー・・・えらーいこっちゃ><

やったこと

DB、ユーザ作成

参考3にはちょろっと書いてありますが、私はDB等作らずにやっていました。
作りました。

# 権限絞ったほうがいいのかな
# 最初select, delete, update, insertだけ許可してたら、alterできませんって後でエラーが出ました
mysql>  GRANT ALL ON *.* TO october@"localhost";
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> create database october;

そしてapp/config/database.phpに上記設定を書く。

その後URLに再度アクセスしてみる。

SQLSTATE[HY000] [2002] No such file or directory

ソースをgrepする。必死にググる。なんとなく原因分かる。
app/config/database.phpに設定追加

# mysql.sockの場所追加
'mysql' => array(
            'driver'    => 'mysql',
                  ・
                  ・
                  ・
            'prefix'    => '',
            'unix_socket' => '/tmp/mysql.sock', # add this parameter
        ),

そうだ、october:upしなきゃ。忘れてた。

$ php artisan october:up

お!さっきとはコンソールに出力されたものが違う!successfully!

再びURLにアクセス。見れた。
~/index.php/backendも見れた。

結論

  • database.phpにちゃんと設定を書く。
    • mysql.sockの場所は必要があれば?

backendにログインすると、以下のメッセージが表示されていました。

There are issues you need to pay attention to in order to configure the system properly.
Directory /themes or its subdirectories is not writable for PHP. Please set corresponding permissions for the webserver on this directory.
Directory /uploads or its subdirectories is not writable for PHP. Please set corresponding permissions for the webserver on this directory.
Directory /uploads/public or its subdirectories is not writable for PHP. Please set corresponding permissions for the webserver on this directory.
Directory /uploads/protected or its subdirectories is not writable for PHP. Please set corresponding permissions for the webserver on this directory.

親切。

$ sudo chown -R apache:apache themes/
$ sudo chown -R apache:apache uploads/

久々のphpbrewでエラーが出たのでごにょごにょした

Laravelを試したくてインストールしようとしたら、PHPのバージョンが低くて怒られたので、phpbrewで5.4.0以上のものを使おうと思ってゴニョゴニョやったときのメモ。

環境

  • CentOS 6.6
  • yum install openssl-devel」は実行済み。

インストール

参考1にあるようにインストール。

$ phpbrew install 5.6.4 +default+openssl+mysql+soap+exif+iconv

# build.logの内容
configure: error: Cannot find OpenSSL's libraries

ググる

分からない事はググって~♪。ググりましたが、似たようなエラーがmacで起きるらしく、macの情報ばかり出て知りたい情報がなかなかでてきませんでした。
参考2にあるように同じようなことで困っている方も。
ようやく見つけたのが参考3および4。

対策

$ ln -s /usr/lib64/libssl.so /usr/lib/libssl.so
$ ln -s /usr/lib64/libcrypto.so /usr/lib/libcrypto.so

そして再びインストールコマンド実行したらインストールできました。
念のためbuild.log見ると、「'make test'」実行するのを忘れないでねって書いてあったので、

$ cd .phpbrew/build/php-5.6.4
$ make test

したら、いくつかfailedが・・・。
make testの最後に以下が表示されました。

You may have found a problem in PHP.
This report can be automatically sent to the PHP QA team at
・
・
・

そういう仕組みになっているんですね。

肝心のLaravelは?

今インストール試しています。
インストールできたっぽいです。動作確認します。
できた!!いけた!になおき!

$ composer create-project laravel/laravel LaravelTest

YAPC::Asia2014ちょっとだけ行ってきた

前提

・二日券購入
・行く気満々

一日目

体が気怠く行けなかった。。行かなかった。。。
Mojoliciousのは本当に聞きたかった。Lintの話も。
ほんとにほんとにほんとにほんとにライオンだーレベルでほんとに。

二日目

朝からちょい気怠さが。
YAPC::Europeの話、App::PRTの話、LTちょっとだけ聞いた。
Acme大全買ってみた。

感想

  • プレゼンが素敵
    • 会場で笑いが起こるのいいですね。スマイル。
  • 会場パンパン
    • 早めに行ったけどパンパン
    • 二階席の端で立ち見チャレンジしたけど画面が見えなかった
    • だから途中で帰った
  • ノベルティいいですね!

tig再びインストール

以前やったとき
git、tigインストールメモ

環境

CentOS 6.5 64ビット

インストール

$ wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
$ rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
$ sudo yum install tig
=======================================================================================================
 Package                     Arch               Version                     Repository            Size
=======================================================================================================
Installing:
 tig                         x86_64             1.2-1.el6.rf                rpmforge             142 k
Installing for dependencies:
 bash-completion             noarch             1:1.3-7.el6                 epel                 216 k

Transaction Summary
=======================================================================================================



tig時の日本語が文字化けする。。。

YAPC::Asia Tokyo 2013に行ってきた

書くのがすごく遅くなりました。
YAPC::Asia Tokyo 2013に行って来ました。
1日目、懇親会、2日目に参加しました。


感想

  • グッズがたくさん!

ありがとうございます。
ミクシィさんのグッズはいろんな種類がある気がします。就活のときもUSBハブのやつをいただきました。Facebookよりもmixiのほうが好きです。本当です。
さくらインターネットさんからはさくらクラウドの2万円分無料券をいただきました。使ってみます。

  • 聞いていても分からないことが多すぎる

私の知識不足です。がんばります。
大規模Perl初心者研修を支える技術やさしいGit の内部構造は心穏やかに聞くことができました。

  • Perl使って開発するならコウヤッテというスタンダードなものを知ることができた

使ったことのないものは使ってみます。

  • おもしろい

そのままです。

  • 1人で(知り合いがいない)懇親会に参加するのはドキドキした

人見知りなので懇親会に参加するか迷っていましたが、えいや!と参加してみました。
勇気を出して声をかけ、7名ほどの方々とお話させていただきました。
お話しした方々は若い方が多かったので刺激になりました。

  • キャンパス入り口に案内板みたいなものがあるとよかった

迷いました。
キャンパス入り口に"YAPC会場はこちら→"というような張り紙1枚あるだけでもうれしかったなーと思いました。
HPに詳しく写真が載っていた気がしますが、当時ガラケーを使っていたのでHPを見ることが困難でしたので><


その他
手を動かそう。