2019-01-01から1年間の記事一覧

Laravel Deployerで変な落ち方してロックが残ってしまった場合の対処法

最近とても忙しい。つらい。 とっても便利なDeployerをLaravel向けにさらに手軽にしたLaravel Deployerですが、この間こんなメッセージが出た。 Deploy locked. Execute "dep deploy:unlock " to unlock. 書いてある通り、ロックされちゃったっぽい。 通信環…

銭けっと行ってきたので雑な感想を

(多分)第3回の銭けっと行ってきた。IT系の技術書に限らない、実業実学書の即売会とのこと。 銭けっと公式WEBサイト - ホーム 11時半くらいに着いたがまだ人は少なく、じっくり見て周れて楽しかった。以下覚えている限りの感想。 リンクは銭けっと公式ページ…

LaravelでHTTPS対応する正しいやり方

正しいやり方 HTTPSを強制する場合はWebサーバ側で対処する。HTTPから強制リダイレクトしてもいいし、HTTPは閉じてしまってもいい。 HTTPSを強制する場合、もしくはHTTPSをデフォルトにしたい場合はAPP_URLをhttps://...にする。 リバースプロキシ下で動かす…

Laravelの設定ファイル(config/*.php)のキャッシュ関係の仕様を簡単に

php artisan config:cacheでデフォルトではbootstrap/cache/config.phpにconfig/*.phpから読み込まれた設定のキャッシュが生成される。 config:cacheは最初にconfig:clearするため、再実行した場合はキャッシュが再生成される。 config:clearは単純にbootstr…

IE以外のブラウザではもうES2015は十分サポートされているようだ

FRONTEND CONFERENCE 2019のモダンJavaScript再入門で聞いた、"本セッションで紹介した内容は、IE以外のブラウザではネイティブサポートされている"が気になり、以下のようなコードを書いて試してみた。 https://gist.github.com/magai/467c80989769d5f58ad0…

FRONTEND CONFERENCE 2019行ってきたので雑な感想

最近の案件でVueでSPAに入門して、設計どうしたらいいかさっぱりで困ったので、ヒントでもないかなーと行ってみた。 あと関西でやってくれるカンファレンスとても助かるのでできるだけ行きたいよね。 もっとデザイン寄りかなーと思ってたけど、思ってたより…

[募集終了しました]2019年11月以降のフルリモートのPHPのお仕事を募集しています

仕事数ヶ月分埋まったので、募集終了です。ありがとうございました。 とりあえず自己紹介 私は神戸在住の個人事業主でやっているプログラマです。よろしくお願いします。 ここ5年ほどは仕事ではPHPを書いています。最近はLaravelをかなりやっていて、1人月未…

SynologyのNASのファームウェアのマイナーバージョンの更新を手動でする場合の注意

メジャーバージョンなら、あるいは多分自動更新とかでも問題ないと思うのだが、マイナーバージョンアップをインターネットにつないでいない場合に自分でダウンロードしてきて更新する場合にちょっと引っかかったのでメモ。 メジャーバージョンの.patファイル…

Anker SoundCore Ace A1買ったので感想

前から寝室で使う用の小さくてバッテリー駆動のBluetoothスピーカー欲しかったのだが、安くてよさそうなのがセールやってて2000円切ってたので買った。 決め手の一つが防水ついてないこと。防水つけるとどう考えても音質・入出力・操作性に影響するので、防…

デブサミ2019関西に行ってきたのでだいぶ雑な感想を

雑な上個人的な話ばかりでレポート的な感じではないので、そういうのを求めてる人には以下などのほかの人のレポートがおすすめ。 【行ってきた】(20190927)DevelopersSummitKANSAI 2019 - 技術覚書 勉強会メモ:デブサミ関西2019に行ってきました - Qiita 以…

CentOS 7でCircleCI CLIでDockerがエラーを出す場合

こんなエラー。 % sudo circleci local execute --job build Docker image digest: sha256:359227b82618c1ce0514da6b1ee0c05f60863601b8078b1907fe6917f3e5593a ====>> Spin up Environment Build-agent version 1.0.15410-75b89bda (2019-09-13T15:43:07+00…

Goでis-a関係を作る

Go

Goには継承はなく、実装の再利用は構造体の埋め込みで行う。じっさいは委譲だが、見た目はオブジェクト指向言語で継承した場合のように使える。 package main type Super struct {} func (super Super) SuperMethod() {} type Sub struct {Super} func main(…

PHPで例外を出力するときにわざわざgetMessage()を使う必要はない

PHP

たまに見かけるので。 こんな感じにすれば__toString()が自動的に呼ばれる。エラーメッセージとスタックトレースの両方がついたいい感じの出力になる。

Nginxで権限があるはずなのにポートをバインドできない

ちょっと必要があって、Nginxを8000番で動かそうとしたらなぜかエラーが出た。1023までのポートならともかく8000だし、そもそもroot権限で動かしてるのに。 nginx: [emerg] bind() to 0.0.0.0:8000 failed (13: Permission denied) Permission deniedと来た…

WindowsでMercurialが死んでた件

5.0.2で以下のようなエラーが出た。Python 3が別途入ってたからそのせいかと思ってPATHいじったりアンインストールしてみたりしたが駄目。 仕方ないので一応安全そうなところから4.9.1をダウンロードして入れてみたら動いたっぽい。 ちなみにChocolateyで定…

Laravelでドキュメントルートに静的ファイルを混在させる方法

作ったシステムに後から静的ページを追加したい、みたいな要望にどう対応すればいいだろうか。「有料です」で済ませたいところだが、なかなかそうも行かない場合も多い。 古のCGI/PHP環境でやってきたクライアントにとっては、既存のファイルと無関係なとこ…

LaravelでAuth系のコントローラが最初から存在するのはなぜか

ご存知の通りLaravelではartisan make:authすることでいくつかのファイルが生成・変更され、デフォルトの認証関係の機能を有効にできる。 だが、じつはこれを実行しなくとも、最初からApp\Http\Controllers\Auth\LoginControllerをはじめとする各種コントロ…

ChocolateyでStrawberry Perlが更新できない

chocolatey upgrade strawberryperlすると、 WARNING: Generic MSI Error. This is a local environment error, not an issue with a package or the MSI itself - it could mean a pending reboot is necessary prior to install or something else (like t…

Tridactylでデフォルトのsearchurlsのキーワードを無効にする

Tridactylではデフォルトで各種キーワードでの検索が設定されている。が、キーワードが名前そのままなので、キーワードと同じ単語を検索したい場合につらい。ので無効にしたいのだが、しばらくやり方がわからず、試行錯誤の末最近ようやくわかったので共有す…

Google Chartsで列に有効なデータがある場合は問題ないのにない場合にエラーになる件

var data = google.visualization.arrayToDataTable([ ['date', 'number'], ['2019-05-13', 1], ['2019-05-14', 2], ['2019-05-15', null] ]); では問題ないのに、 var data = google.visualization.arrayToDataTable([ ['date', 'number'], ['2019-05-13', …

Eloquentのwhen()で、偽になる可能性のある値の存在を条件に検索する

Eloquentというかクエリビルダ側の機能だけどまあ。 when()はこのように使うことができ、条件分岐を何度も何度も書かなくて済む。 when($condition['cond_1'] ?? false, function ($query, $cond_1) { $query->where('cond_1', $cond_1); }); }…

ASUSのノートPCを修理に出したメモ

購入から一年後くらいからSSDの認識が怪しくなってきて、一度治ったかのように見えたものの数ヶ月後完全に駄目になったので修理に出した。ASUSのサポートセンターに直接。 こういうのって具体的にどういうフローになるのか、どれくらいかかるかなどわかりに…

ngrokでWordPress製のサイトを公開する

ご存知の通りWordPressはドメイン名をデータベースに入れたりデータベースに入れたりしてるので、ngrokで動かせるようにするのはちょっとやっかい。 なのでどうするか。まあ公式ドキュメントに書いてある。 ngrok – documentation なお既存の記事などのデー…

ngrokで"online ngrok process", "tunnels/ngrok process"はなにを指すか

"online ngrok process"は有効なngrokコマンドの数、"tunnels/ngrok process"はngrokによって転送(トンネル)されているポート数、と考えてよさそう。 つまり、無料版 1 online ngrok process 4 tunnels/ngrok process ngrok - secure introspectable tunnels…

Laravelのartisanのzsh補完書いた

サブコマンドの補完はあったんだけど、ちゃんとオプションの補完までしてくれるのがないので自分で書いてみた。zshわからんしcompsysわからんし、そもそもシェルスクリプトさっぱりなので大変苦労したが、まあ使えるものになってきたので公開。 サブコマンド…

Accessの日付処理はWindowsのロケール設定に依存しているが不完全なので問題を回避できない場合があるっぽい?

もう手もとにOffice 365 Soloなくて(仕事終わったんで解約した)、検証できないのでいろいろアレだけど一応書いておく。 AccessでGUIから日付を取得しようとすると、Windowsのロケールに依存した形式で返ってくるようなのだが、これを適切に取り扱う方法がな…

VirtualBoxで、仮想アプライアンスのエクスポートをCLIでやる

半分くらいまで手動で(GUIで)やってからふと思い付いて調べたら、やっぱりできた。 VBoxManage list vms で名前取って、VBoxManage export <NAME> -o <NAME>.ova みたいな。 拡張子でエクスポートするファイルタイプを指定する形っぽい。.ovfで指定したら.vmdkもいっしょ</name></name>…

2018年に買ってよかったもの5つ

コーヒーメーカーとコーヒーミルと、水出しアイスコーヒー用のボトル コーヒーメーカーは象印のEC-GB40ていう安いやつ。ドリップでそこまで味変わらんだろうと思ったので、ちゃんとしたドリッパーではなくコーヒーメーカー。じっさいそれで特に問題なくおい…

Laravelでinput:checkboxのデフォルトでのチェックを実装する

ご存知の通りHTMLの仕様バグによりinput:checkboxは未チェック時、nameも送ってくれない。通常なら以下のようにして、フォームエラー時の再チェックを実装する。 <input type="checkbox" name="example" value="1" {!! old('example') == 1 ? 'checked="checked" : '' !!}> デフォルトが未チェックであればこれで問題ないが、デフォルトでチェック状態にしたい場合は…

Laravel Mixというかwebpackのコンパイルが、productionで重い件メモ

前提として、CSSはデフォルトにプラスα程度でデフォルトで入ってるBootstrapが重いく らい、JavaScriptが、Bootstrap入ってるファイルが別々に2つあってこっちが割と重い。 初回で13秒程度、変更検知でのコンパイルが6秒ほど。 一応developmentだと4秒未満、…