waste of time

主にPHP

HTTP/2の復習メモ

HTTP/2対応を行う機会が来そうな気がしないでもない感じがしてきたので、いろいろおさらいしてみる。 HTTP/1.1の特徴 1つのコネクション上では、1リクエストが完了するまで、新しいリクエストを送ることができない HTTP/1.1からはHTTPパイプラインがサポート…

2016/11 長野旅行

2016/11/12 - 2016/11/13 長野県 上高地 渋温泉 地獄谷野猿公苑 長野オリンピックスタジアム 渋温泉は洗心館 松屋に泊まったんだけど、女将さん(?)が可愛かった。

PHPのキャッシュ機構のおさらいと、opcacheの設定とかキャッシュクリアとか

PHPのキャッシュ機構 APC PHP: APC - Manual オペコードキャッシュ機能+データキャッシュ(ユーザキャッシュ)機能をもつ。現在は開発が停止されており、PHP5.5.0以降は以下2つのキャッシュ機構の使用が推奨されている。 APCu PHP: APCu - Manual APCからオ…

2016/10 岐阜・石川・福井旅行

2016/10/9 - 2016/10/10 岐阜県 白川郷 石川県 金沢駅 湯涌温泉 ぼんぼり祭り 千里浜なぎさドライブウェイ(天候不順で走行はできず) 福井県 ワンダーランド 東尋坊 芝政ワールド

2016-08 大阪・京都・神戸 旅行メモ

8/26(金) 津田沼駅から新今宮駅まで青春18切符でだいたい10時間くらい。 熱海駅 乗り継ぎで時間が空いたから降りたが特に何もなかった。 弁天島駅 静岡県浜松市、浜名湖の河口にある駅。謎の鳥居を見ながら海岸沿いを散歩。 名古屋駅 ひつまぶし。普通にうな…

bundle installしたらeventmachineのインストールに失敗した件

たぶんまたハマるだろうからメモ。 事象 $ bundle install --path vendor/bundle Fetching git://github.com/eventmachine/eventmachine.git Fetching gem metadata from https://rubygems.org/ Fetching version metadata from https://rubygems.org/ Resol…

rbenv + ruby-buildでrubyをインストールする

yum installで入るrubyが1.8だったので、rbenvのプラグインであるruby-build経由で最新のruby(2016/5/29現時点の安定版v2.3.1)をインストールする。 この記事に書いてあることはすべて公式ドキュメントから辿れる内容なので、公式ドキュメントを見よう。 R…

Laravel5.2.x EloquentORM

これまで2年弱、PHPでフレームワークといえばCakePHP2を使っていましたが、ここ2,3ヶ月ほど趣味でも仕事でもLaravel5を触っています。 Cake2.xからLaravel5.xに乗り換えて全然違うなぁと感じたのはDB操作周りです。いわゆるO/Rマッパーの使い勝手が結構違い…

VagrantにSSHログインしたときにアニメ放送情報を表示させる

今日放送のアニメなんだっけ?と仕事中に気になることはよくあるはず。 見逃せないアニメの日は残業せず帰りたい。 そんな感じの需要を満たすかもしれないソリューションです。 SSHログインしたときに何か表示する motd(message of the day)を使えば可能らし…

vagrant upしたらマウントに失敗する件

virtualboxを再インストールしてvagrant upしたら、以下のようなエラーが出てディレクトリがマウントできない云々となりました。この問題は、GuestAdditionsを再ビルドすることで解決することができます。 > vagrant up ... ==> default: Mounting shared fo…

PHPでSeleniumWebdriverを操作してヘッドレス化したChromeを動かす

ajaxでコンテンツを生成しているページをスクレイピングしようと思ったので、WebDriverを試してみました。本来の用途(E2Eテスト)とは少し違うとは思いますが、使えるものは使う方向で。 gccのビルドとかで長くなったので、ajaxコンテンツを取得するとか本当…

[落書きメモ] よく使う(?)gitコマンド

(たまに|よく)使うけど忘れそうなコマンドの自分用メモ。 git config gitconfig置き場は3種類あって、system, global, localの順に呼ばれて上書きされるっぽい 現在の設定を確認 git config (--system|--global|--local) -l 設定例 git config (--system|--g…

PHPでRedis

Redisインストール CentOSへのRedisインストールメモ 上記記事を参考にRedisをインストール。なお、記事ではredis-2.8.12.tar.gzをwgetしていますが、最新版を使いたかったのでredis-stable.tar.gzをwgetしました。 $ cd ~/ $ wget http://download.redis.io…

PHPカンファレンス2015参加してきた

PHPカンファレンスに参加してきました。 年々参加者も増えており(参加費無料がでかい)、なんと今年は全館貸切だそうです。勢いを感じますね。 以下、聞いた発表について適当にまとめた感想入り混じりメモ。 PHPの今とこれから2015 みんなの使ってるバージ…

posh-gitを入れてCUIのGit操作で入力補完させる

CUIでGit操作するときに、gitコマンドやブランチ名の補完をしてくれたり、プロンプトに現ブランチ名を表示してくれるposh-gitをインストールしてみました。 posh-gitインストール 下記リポジトリからcloneして、中にあるinstall.ps1を実行するだけ。 実行す…

「nginxをフロントエンドで使う」の意味が分からなかったけど最近なんとなく分かった

ような気がする。 「nginxっていうwebサーバがアツいらしい」という感じで聞いたことはあるけどnginx自体詳しくは知らなかった。最近何かの記事で「nginxをフロントエンドで使う」的な言い回しがあってハァ?ってなったので少しググってみた。 Nginxを使ったも…

WindowsでAnemoneを使う

業務でクローラー作る案件を他の人がやってて興味があったので、自分でも少し試してみました。 rubyインストールからAnemone(Ruby製のクローラー)でスクレイピングするまで。 Rubyインストール chocolateyでrubyとrubygemsをインストールする。 Powershell…

ajaxで返ってきたjsonの参照ができなくてちょっと悩んだ話

$.post(requestURL, params, function(res) { console.log(res.hoge); }); ajaxで受け取ったjsonデータを上記のように参照しようとしたらundefinedが返ってきた。 $.post()の最後にdataTypeをちゃんと指定してねってことだった。 $.post(requestURL, params,…

インデックスの効かないSQLを書き換えて一部PHPで処理させようとした話

ORDER BYとLIMITを含むSQLを吐き出すCakePHPのコードがある。 // HogeModel $params = array( 'fields' => array( 略 ), 'conditions' => array( hoge_id => Configure::read('HOGE_ID') ), order => array( 'created' => 'desc' ), 'limit' => $limit ); $r…

MySQL インデックスめも

仕事でDBにインデックス貼る機会があったからめも。初めてだったのでインデックスってなんなのってとこから調べてやった。とりあえずEXPLAINつけて見てみるtypeでALLでてたりExtraでUsing temporary, Using filesortは改善の余地あり基本的にクエリのWHERE句…

VPSで名前解決できなかった件

お名前.comのVPSの管理を頼まれて構築作業していたところ、yum -y updateでエラーが出るのに気付く。 ping www.google.comが通らないしnslookupも使えない。 ping 173.194.126.146(google.comのIPアドレス)は通るので、どうやら名前解決ができていないようだ…

ConoHa(CentOS6.5)にxdebug入れる

# yum install php-pecl-xdebug Loaded plugins: fastestmirror, priorities, security Setting up Install Process Loading mirror speeds from cached hostfile * base: ftp.tsukuba.wide.ad.jp * epel: ftp.kddilabs.jp * extras: ftp.tsukuba.wide.ad.jp…

ConoHaで環境構築③

ConoHaで環境構築① - 開発の備忘録的なやつ ConoHaで環境構築② - 開発の備忘録的なやつ remiリポジトリの追加 $ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm $ sudo yum install yum-plugin-priorities ← リポジトリの優先…

ConoHaで環境構築②

ConoHaで環境構築① - 開発の備忘録的なやつ ConoHaで環境構築③ - 開発の備忘録的なやつ iptablesの設定 sshポートはあとで10022に変更します。 $ chkconfig iptables --list ← 3:onになっているのを確認 $ sudo vim /etc/sysconfig/iptables *filter :INPUT …

ConoHaで環境構築①

ConoHa試用中です。 ConoHaでは、SSH経由シリアルコンソール接続するための秘密鍵が用意されているので、それをConoHaコンパネからダウンロードしてシリアルコンソールに接続する。 あくまでシリアルコンソール接続のための秘密鍵なので注意。 SSH接続用に使…

Sublime text3に入れてるパッケージとか設定とか

前にも同じような記事を書きましたが、転職して職場環境も開発環境も新しくリフレッシュしたのでSublime textのパッケージも今一度見直してみることにしました。 パッケージの内容は前回の記事とほぼほぼ同じだと思いますが、今回はそれに加えて現在の設定フ…

Gitの用語メモ

普段の業務ではSVNでソース管理しているのですが、最近個人的な開発(と呼べるほどのことはしていませんが)でBitbucket/SourceTreeを使って今更ながらGitを触り始めました。 SVNを使っていたと言っても基本的にはチェックアウト・更新・コミットをするくら…

mod_rewriteのRewriteCondとRewriteRuleの使い方

業務で.htaccessにリダイレクト設定書くとき詰まったので使い方とかの備忘録。 基本的な形 .htaccessに書くときの基本形は以下のとおり。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond hoge fuga RewriteRule piyo poyo </IfModule> 事前にhttpd.confでmod_rewriteが有効になってる前…

CakePHP2.5.4でjQuery読み込み場所について

まだドットインストールのCakePHP入門やってます。 ajaxで記事削除するうんぬんのところでどうにもうまく動かない。PHPでエラーは出てないから多分JSの箇所が悪いんだろうと思って見なおしてみても原因がよく分からない。(そもそもドットインストールのコー…

CakePHP2.5.4でフォームのバリデーションエラー時に指定したメッセージが出ない

最近ドットインストール見ながらCakePHP習得し始めたんですが、モデルに指定したバリデーションエラーメッセージと異なるエラーメッセージが表示されて困ってました。 Model array( 'rule' => 'notEmpty', 'message' => '必須入力項目です。' // ←これ表示…

脆弱性が発見されたbashをアップデートした

「Bash」に重大な脆弱性、Heartbleed以上に危険との見方も 巷で話題になってるbashの脆弱性に関して、対策済みのバージョンにアップデートすることにした。 CentOS(さくらVPS)のbash アップデート前のbashのバージョンは4.1.2-15.e16_5.1。修正版は4.1.2-15.…

PHP5.3.3からPHP5.5.17に上げたらMySQLが起動しなくなった

前エントリで苦労してPHP5.5系にアップデートしたのはいいんだけど、そのサーバで動いてたアプリケーションをPHPアップデート後に動かしてみたら以下の様なエラーが出た。 Warning: mysql_connect(): Can't connect to local MySQL server through socket '/…

PHPのバージョンを5.3.3から5.5系に変える

CentOSのバージョンは6.5、PHPのバージョンは5.3.3であることを確認。 $ sudo yum update $ cat /etc/redhat-release CentOS release 6.5 (Final) $ php -v PHP 5.3.3 (cli) (built: Aug 6 2014 05:54:27) Copyright (c) 1997-2010 The PHP Group Zend Engin…

よく使うショートカットまとめ

いろいろ共通のも混じってると思う。 Chrome ショートカットキー 効果 Ctrl + T 新しいタブを開く Ctrl + W 現在のタブを閉じる Ctrl + R 現在のタブをリロード Ctrl + Shift + R キャッシュを無視してリロード(スーパーリロード) Ctrl + Shift + T 閉じた…

PHP5.4から可能になった連想配列記法をPHP5.3.3で使ってエラー出てた話

昔作ったアプリケーションを久しぶりに動かしてみたらシンタックスエラーが出たので、ソースの該当箇所を見てみたら連想配列を以下のように指定していた。 $data = [ 'api_key' => $api_key, 'limit' => $limit, 'offset' => $offset ]; ばっちりとマニュア…

クラウドコンピューティングのITシステム

よく聞くけどよく忘れるので書いとく。 SaaS (Software as a Service) よくあるいわゆるWEBアプリケーション。 PCにインストールすることなく、ブラウザ上で操作できるアプリケーションのこと。 OfficeWebApp Gmail など ちなみにASPも業務アプリケーション…

PHPのpublic, private, protected

アクセス装飾子 意味 public どこからでもアクセス可能 private 自クラスからのみアクセス可能 protected 自クラスとサブクラスからのみアクセス可能

Sublime text 3で使用しているPackages

2014/10/18追記:新しい記事書きました。 Sublime text3に入れてるパッケージとか設定とか - 開発の備忘録的なやつ 現在私が使っているパッケージをまとめました。 主に、新しい環境でパッケージを1から入れるときに自分で参考にする用です。 AutoFileName …

64bitOSをVMで動かすときはVirtualization Technologyを有効にしようという話

winノートPCにvagrantを入れてCentOS環境を作ってみました。 CentOS6.5(64bit)のboxでvagrant initしてVagrantfileを生成するところまでは良かったのですが、vagrant upするとDL is deprecated, please use Fiddle~ と出てVMが起動できません。 ググって見…

CentOSの時刻を現在時刻に合わせる

先のエントリで書いたようなAPIリクエストでエラーが出るのはOSの時刻があっていないことが原因(たぶん)。 OSの時刻をNTPで自動で合わせるようにしたらエラーは出なくなった。 方法は以下に丸投げ。 CentOSにntpサーバを入れて、日本標準時刻に自動的に合…

Cannot use object of type stdClass as array

PHPでTwitterのトレンドを取得するプログラムで「Cannot use object of type stdClass as array」というエラーが表示されました。 PHP Error: Cannot use object of type stdClass as array - ふってもハレても にあるように、原因はオブジェクトを配列とし…