だ。ログ。

開発とかスノボとかやきうとか。

Linux

Laravelで時間がUTCになってしまう

保存している時間がおかしい Laravelでアプリ開発をしていてログを作る機能があったので何気なく $date = date('Y-m-d H:i:s');と言う変数にdate関数で日付と時間を入れ実行。期待結果 2023-12-07 10:00:00となるはずが 実行結果 2023-12-07 01:00:00 と記録…

AWSのロードバランサにSSLにある際の強制SSLリダイレクト

サーバー側とアプリケーション側で開発が別れていると、サーバーサイド側の構成をあまり意識せず書いてしまう事が多いが 強制SSLのリダイレクトを.htaccessに書くと <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{R</ifmodule>…

M1 MacでDockerコンテナからsystemctlが利用できない

そろそろ前に買ったMacbookProが3年、vagrant + vmwareの構成でローカル内開発を行ってきた。 ただ、この環境もいつ壊れるか分からないと言う含みがある。 と言うのも、OSを現在のMontereyにアップグレードした際に、Vagrantが対応出来なくなって色々と難儀…

MacOSをMontereyにしたらVagrantが動かなくなったハナシ

MacのOSをアップデートする 何もない。 と思って金曜日の夕方にアップデートしたMacOS 月曜日の朝に起動しローカル環境のいつもの vagrant upを行うがエラーが。 $ vagrant up Bringing machine 'default' up with 'virtualbox' provider... ==> default: Ch…

VirtualMachineのSSH接続が吹っ飛んだ

ターミナルアプリが吹っ飛んだ お昼から帰ってきてPCを立ち上げると、ターミナルアプリから変なメッセージが出てホストが全部吹っ飛んでいる。。。 とにかく他に影響ないかを確認して、自分のマシンのみがクラッシュした事で色んな関係各所に迷惑は掛けずに…

vagrantをアップデートしたら起動しなくなった

$ vagrant up There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and stderr is shown below. Command: ["hostonlyif", "create"] Stderr: 0%... Progress state: NS_ERROR_FAILURE VBoxMan…

Let's Encryptの担当者のメールアドレス変更

商用環境ではあまり使っていないが、どうしてもスモールスタートをする場合のネックとなる有料SSL 結構色んなところで利用はしているが、担当者が居なくなってSSLの更新をサボっている。もしくはcertbot更新用のバッチを作っていないなんて事も見られる。ま…

SQLのエイリアス名を条件に使う

AS句を使って、明示的にカラム名を変える事は多々ある。 ただ、このAS句を条件式に加えたいと言う事もある。 最たる例は集計関数を使った時 SELECT COUNT(hoge.fuga) as mofu FROM hoge WHERE (mofu > 100) この問い合わせはエラーとなってしまう。 mofuと言…

使わなくなったLet's Encryptの設定削除

作るだけ作って用済みになったテスト用のサーバーのデータを削除する。 うっかり忘れがちなのがLet'sEncryptのSSLを利用していた設定の削除。他の証明書を更新した際に、DNS解決出来ないと怒られる。 毎回忘れるのでコピペ $ certbot delete -d hoge.fuga.co…

get_headersでHTTPステータスコードが正しく取れない

自分達だけ使っているシステムだとオペレーション上でなんとでもなる事かもしれないが、他人が使っている場合どうしても突拍子もない操作から想定していない自体が起こりうる。 画像が消えた!と言う事を言われる。そもそも既存であるシステムのため、レコー…

IPでページ表示時のリダイレクト

IP直叩き リダイレクトこの辺の言葉が全てになるが、IPアドレスをブラウザで叩いた際にページが見えてしまう。 apacheの設定上、0.confとか作っておいて優先順位が最上位のconfを読ませておけば。と思ってしまうが商用稼働してしまっているサイトの場合停め…

Excelとかスプシの列の移動

PHPでExcelとかスプレッドシートを扱う場合に行の移動は数値なので数値を足していけば良い。 しかし横の列に値を入れたい。ってときにどうすればって事で悩む。 A~Zで済むなら配列にABCD持たせて…?等思ったが列数がオーバーした段階で詰む。要はA~Zを越え…

manifest.jsonをベーシック認証付きサイトで認識させる

開発サイト等でベーシック認証を掛けてアクセス制限をしている際に、pwa化を行う為にmanifest.jsonを設置していると認証に引っかかってしまい読み込む事が出来ない。 なので、ベーシック認証の前に除外する設定が必要となる。 該当となる.htaccessに <Files ~ "^(manifest\.json|site\.webmanifest)$"> Requir</files>…

LetsEncrypt証明書をcentos7にインストールする

開発用サーバーのSSL化ってのも現在は必要になっている。 アプリケーションとして環境差異、特にSSLのみで動作に影響あるようなシステムを作ってはいないと考えたいがある程度は整えておきたい。古い開発手法をしていると*.hoge.fugaのマルチドメイン対応で…

CentOS7でdigを実行する

インストールした段階では入っていない。 $ yum install bind-utils コマンドコピペでOK。 ドメインの確認とかで結構使うのでメモ。

SESからSNSを経由したバウンスメールの通知のjsonが上手くパース出来ない件

SESの大原則、メールのバウンス率が5%を越える事なかれ。 商用環境だろうとなんだろうと無慈悲なサービス停止を回避する為にはメールの送信失敗率を極力抑える必要性がある。 送る事は前提として、どうやって抑えるか。 多分、厳密には送る前にアドレスの正…

AWS SESの差出人の書き方

テンプレなのでコピペすれば良いように。 名前部分の書き方。 $sender_name = mb_convert_encoding("ワイやでワイ", 'ISO-2022-JP', 'UTF-8'); $from = sprintf('%s <%s>', mb_encode_mimeheader($sender_name, 'ISO-2022-JP'), "waiyadewai@hogefuga.mofu")…

logrotateのファイルgzip化

zabbixがこの頃HDD枯渇してますってなアラートを出すようになった。 古いサーバーを再利用したので、システム的には不要なモノかもしれないが消したら動かなくなるかも。 と言う潜在的なリスクが有る以上、なんとか今の形を残しておく。と言う事が必要になっ…

CakePHP2で生SQLを発行する。

なんと言うか他者の作ったシステムに手を入れると言うのは非常に手が掛かる。 モデル部分で変な結合が入っていたり、意図しないデータの取得の仕方をしていたりしている為、最短距離でこういうデータってのが取りづらい。 特にSQL部分はモデル部分がいかに基…

新しくvirtualbox + vagrantで環境構築した際にvagrant upが途中で止まる。

前にも記事にしたが、仮想化環境で開発を行う為にローカルにvirtualbox+vagrantをインストールして環境を整える。powershellなどで、作業したいディレクトリに移動し $ vagrant init bent/centos-7.2 ここでVagrantfileの中のIPを利用したい仮想IPに変えて $…

GMOグローバルサインのSSLの利用すると中間証明書は自分でダウンロードしてインストールしてね。 というセルフスタイルになっている。 中途で赴任した自分からすれば前に使ってるのそのまま使えばええやん。ってなっていたが古いバージョンを使っていたためw…

根本的な見直し

「サーバーが遅い」と言う意見をよく聞く。 ひねくれたシステム屋からすれば、通信環境とか様々な事を加味した上で遅い言ってるワケではないので、サーバーが遅い・重いと言う言葉はどのアーキテクトを触るか?と言う事の判断材料にしたくはない。 根無し草…

zabbixを利用してmysqlを監視する時にハマったこと

かなりドツボにハマって1日調べた。CentOS 6 今回利用するzabbixのバージョンは3.4.15 zabbixのサーバーは他ホストで存在している事が前提。 zabbix-agentのインストール # rhel6のパッケージインストール $ rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhe…

zabbixからslackにアラートを飛ばす

システムがある程度安定はしてきているものの、お金である程度抑えつけている。 そのため、まだ参加間もない自分がシステムの大枠のリファクトまでは手が回せず稼働側の不安を払拭する事ができない。期待値として求められる「システムの安定稼働」に関しての…

SSHの鍵ファイルの権限周り

どうしてもサーバー管理をしていると、新しくユーザーを追加する事がある。 $ useradd hogefuga ユーザー自体はこれで作成出来る。 この後に接続する為の鍵をユーザーに作って共有してもらう。 これは作ったユーザーのディレクトリにて $ cd /home/hogefuga/…

SSHの鍵ファイルの権限周り

どうしてもサーバー管理をしていると、新しくユーザーを追加する事がある。 $ useradd hogefuga ユーザー自体はこれで作成出来る。 この後に接続する為の鍵をユーザーに作って共有してもらう。 これは作ったユーザーのディレクトリにて $ cd /home/hogefuga/…

mysqldumpでGot a packet bigger than ‘max_allowed_packet’でdumpできない。

環境をまるっとコピーする為にdumpしよう $ mysqldump -uhoge -p hogefuga > dump.sql ってなコマンドを打ってdump開始まではしたものの Got a packet bigger than ‘max_allowed_packet’ と出て途中で止まる。読んで字の通り、パケット上限に引っかかってる…

phpMyAdminのblowfishの生成

毎回ローカル環境を立てる際にphpMyAdminのblowfishの作り方で止まる。 # expectのインストール $ yum install expect # インストールが終わったらblowfishの生成 $ mkpasswd -l 46 と言う事でmkpasswdで文字列を生成してコピペすれば終わり。 インストール1…

EC2のリタイア予告

サーバーの朝のご機嫌を伺うためにAWSのコントロールパネルを見ていると見慣れない文字が リタイア:このインスタンスは2018年○月○日 1:23:45 UTC+9後にリタイアが予定されています。 リタイア…? ドキュメントを読むと、機器の老朽化等で現在搭載されている…

viでvimを使う

vagrantで様々な環境をローカルに構築する機会が多い。 その度に毎回忘れてしまっているのでメモとして。 $ yum install vim-enhanced $ cp /etc/profile /etc/profile.default $ vi /etc/profile #最下部に記述 alias vi='vim' $ source /etc/profile これ…