nmtysh.log

Tech系のネタや日々の独り言などを書いています。

プログラミング

macOS SonomaにphpenvでPHP 8.3をインストールする

phpenvを使ってPHP 8.3系をインストールしたメモ。 8.2系のインストールメモは下記リンク先。 nmtysh.hatenablog.com 環境 macOS Sonoma 14.2.1 zsh(Z shell) Homebrew

読書記録 2023/05/04

フロントエンド開発のためのセキュリティ入門 知らなかったでは済まされない脆弱性対策の必須知識 フロントエンド開発のためのセキュリティ入門 知らなかったでは済まされない脆弱性対策の必須知識作者:平野 昌士翔泳社Amazon 入門とある通り、初心者向け。 …

Homebrewにformula更新のPull Requestを送ってみた

node-buildの新しいVerが公開されたので、HomebrewにPull Requestを送ってみることにしました。 手順を自分用の備忘録としてまとめました。 Scraped latest definitions by nodenv-bot · Pull Request #804 · nodenv/node-build

読書記録 2023/04/15

ちょうぜつソフトウェア設計入門――PHPで理解するオブジェクト指向の活用 ちょうぜつソフトウェア設計入門――PHPで理解するオブジェクト指向の活用作者:田中 ひさてる技術評論社Amazon ちょっと色々忙しかった(言い訳)ので、読むのに一ヶ月ぐらいかかった。 サ…

macOS Venturaにnodenvでnodeをインストールする

nodenvを使ってnodeをインストールしました。 自分用の備忘録としてまとめました。

macOS VenturaにphpenvでPHP 8.2をインストールする

phpenvを使ってPHP 8.2系をインストールしました。 依存パッケージのインストールが必要だったので備忘録としてまとめます。

読書記録 2023/03/11

「技術書」の読書術 達人が教える選び方・読み方・情報発信&共有のコツとテクニック 読了。精読しがちで1冊を読み終わるのに時間がかかるタイプなので、もうちょっと斜め読みというか、ざっくり読めるようになりたい。「技術書」の読書術 達人が教える選び方…

macOS MontereyにphpenvでPHP 8.1.9をインストールする

以前、phpenvでPHPをインストールしましたが、PHPの新しいバージョンが公開されているので、コマンドの見直しを兼ねつつメモとして残します。

macOS MontereyにphpenvでPHP 8.0.22をインストールする

以前、phpenvでPHPをインストールしましたが、PHPの新しいバージョンが公開されているので、コマンドの見直しを兼ねつつメモとして残します。

そろそろ開発環境を見直す時期なのかも

Apple Silicon環境も出回ってきていて、開発者やそれ以外のメンバーのローカルの開発環境を見直す時期なのかもしれない。 Vagrant + VirtualBoxはApple Siliconでは使えないし…… Vagrant環境でhostsファイルの更新用に利用していたプラグインを調べてみたら…

macOSにphpenvでPHP 7.4をインストールする

複数バージョンのPHPをインストールしてみたかったので、phpenvを使ってPHPをインストールしました。 依存パッケージのインストールが必要だったので備忘録としてまとめます。

macOSにphpenvでPHP 8.0をインストールする

複数バージョンのPHPをインストールしてみたかったので、phpenvを使ってPHPをインストールしました。 依存パッケージのインストールが必要だったので備忘録としてまとめます。

macOSにphpenvでPHP 8.1をインストールする

複数バージョンのPHPをインストールしてみたかったので、phpenvを使ってPHPをインストールしました。 依存パッケージのインストールが必要だったので備忘録としてまとめます。

phpenvのアップデートプラグインを作ってみた

macOS環境で複数のPHPバージョンを動かしたくなって、phpenvを使ってみることにしました。 (環境構築周りは別途、書きました) nmtysh.hatenablog.com nmtysh.hatenablog.com nmtysh.hatenablog.com 以前からnodenvを使っていて、プラグインなどをまとめてア…

inputフォーム要素が配列の場合にブラウザバックするとデータが壊れた

nameが配列になっている("data[]"など)inputフォームはpost後にブラウザバックすると、ブラウザが余計な気を効かせて(autocomplete?)、データが壊れることありました。 サーバー側で空欄の要素を除外して配列に入れ直している場合に、サーバー側のレスポンス…

Elastic Beanstalkの設定メモ

まとめ ちゃんとドキュメントを読みましょう。 細かいところを読み飛ばしていてハマりました。

第6感がささいてバグが見つかった

風呂に入っている時や寝る直前になって唐突に 「今日(あるいは先日)開発してたあの部分のコードに○○○な問題があるんじゃないのか?」 とひらめく時があります。 取り越し苦労なこともありますが、調べてみると問題が見つかることもしばしば。 今日も昨日の夜…

ネストしたトランザクションに久々に嵌った

データ変更のバッチ処理を書いて、検証して「よしOK」となりローカルの環境に本適用しました。 その後、念のため同一処理を再実行しても再適用されないことを検証したら何故か適用されちゃいました。 検証中は意図的にトランザクション処理をrollback()する…

dockerのphp:7-fpm-alpineイメージでCakePHP3を動かす

※この記事はQiitaにも掲載しています。 nmtysh.hatenablog.com PHP7を試すためのdocker-compose.ymlを作って、CakePHPをいざ試そうとすると色々モジュールが足りなかったり、VirtualBoxでBoot2Dockerを動かしているために発生する問題があったので、その対処…

せっかくの連休なので……

せっかくの連休なので、できていなかったPHP7/CakePHP3とかRubyとかに手を出そうとしつつ、環境準備の段階で手こずってます。 下手にDockerでと考えずにVagrant+Ansible辺りで準備すれば良かったかなー。 まぁDockerについても勉強ということで。 と、こんな…

listen.allowed_clientsに空白を入れてはいけない

PHP-FPMで接続を許可するFastCGIクライアントの一覧を設定するパラメータに listen.allowed_clients があります。 接続を許可されている FastCGI クライアントの ipv4 アドレス一覧。オリジナル版 PHP FastCGI (5.2.2+) における環境変数 FCGI_WEB_SERVER_AD…

意図しない挙動があるが原因はどこにある?

「プログラムは書いたとおりにしか動かない」 まぁ自明なんですが。 意図したとおりに動いていないということは、何か考慮がもれているところがあるわけで。 だけども、そこが判らない。 事象は起きている。 けれども、再現ができない。 再現できれば、原因…

CakePHP 2.xのElementのCacheは入れ子にできない

CakePHPでViewのElementでキャッシュが利用できます。 利用できますが、キャッシュ生成処理の処理上、入れ子になったElementで親と子の両方でCacheを使うとCacheがおかしくなります。 親のElement(ここではAとします)で、Elementの処理時にCacheのconfigを生…

rename後にはchmodが必要だった

意図したパーミッションにならない 対象Ver: 5.5.x ファイルシステムにファイルを吐き出すCakePHPのコードを書いたのですが、作成したファイルが意図したパーミッションになりませでした。 ファイルを作成した流れ 一時ファイル作成(パーミッションは0644を…

iMacrosでフォームを送信する

Webブラウザの操作を自動化できるツールの一つに iMacros というものがあります。 同じ操作を繰り返す必要があったので、iMacrosで自動化することにしました。 まずは記録 ユーザーの操作を記録して、その操作をスクリプト化してくれます。 URL GOTO=http://…

テストパターンを上手くまとめられるようになりたい

関数のテストコードを書くときに、幾つものパターンをどうまとめるのが一番良いのか悩んでいます。 単純なパターンであれば、それぞれの入力値、期待する出力値を配列にまとめることでfor文(foreach文)で回してテストコードをコンパクトにすることができます…

PDF.jsのCORS対応に注意!

Allow foriegn origin URLs only for hosted viewers. by yurydelendik - PR #6916 - mozilla/pdf.js で、デフォルトだと同一サーバー上のファイルのみに読み込みが制限されました。 Please notice that generic/demo viewer blocks this functionality if d…

FormHelperでoptgroupを使う場合はshowParentsをtrueにする

CakePHPのFormHelperを使ってselectのoptgroup/optionを出力したのですが、一部のoptionが出力されませんでした。 [ 1 => 'A', 2 => 'AA', 3 => 'AAA', 4 => 'AAAA' // <- これが出力されない ], 'BBBB' => [ 5 => 'B', 6 => 'BB', 7 => 'BBB', 8 => 'BBBB'…

nginxでレスポンスヘッダーにCache-Controlが含まれない場合がある

nginxを使ったシステムを構築した際につまずいたところがあったのでメモ。 ・0.2%の確率でレスポンスにCache-Controlヘッダー、Expiresヘッダーが付与されない nginx.conf で expires を使って上記ヘッダーを付与する設定にしていたのだけれど、何故かレスポ…

curlでログインする(備忘録)

curl -b cookie.txt -c cookie.txt --data "username=user&password=pass" "http://localhost/admin/login" -b でファイルに保存された cookie の送信。 -c で受信した cookie をファイルに保存。 --data で post データの送信をしています。 あとは、ログイ…