投稿

さくらレンタルサーバーDKIMを ValueDomain や お名前.com の DNSに登録

イメージ
 さくらのレンタルサーバでDKIMが提供されたので、ValueDomainの DNSにレコードを追加するまでをメモ ※さくら以外のDNSで運用している場合です。さくらのDNSを利用している場合は、DKIMレコードの生成のみでDNSへ登録が完了します 大まかな流れは さくらでDKIMレコードを生成 ValueDomainへ生成したレコードを登録 お名前.com への登録は こちら 手順 さくらのコンパネへログインして、ドメイン/SSL へ入る 対象のドメインの設定メニューから DKIM設定 今回は新規生成なのでそのまま設定 鍵が生成されるので、この画面は閉じる 公開鍵情報を6で使用する場合はコピーしておく 再度メニューへ移動して、対象ドメインのDNSレコードを開く ドメインレコード確認から、 セレクタ._domainkey.あなたのドメイン を探す txtレコードをコピペするが、ダブルクォーテーションで2ブロックに分かれている(たぶん)のでダブルコートを消して一つに連結 または、4の公開鍵を p= 以降にコピペしてもよい ValueDomain へログインして、対象ドメインのDNS設定を開き、txtレコードを下記の書式で追加・保存 txt  セレクタ._domainkey.あなたのドメイン   v=DKIM~ ※ダブルコートが削除されていないとエラーになる 反映されるとコマンドプロンプトから >nslookup -type=txt セレクタ._domainkey.yourdomain のようにセレクタ以降をキーにtxtレコードが引けるようになる

Google Workspace + お名前.com の DKIM設定

イメージ
Google Workspace + お名前.com DNS利用中 の DKIM設定 大まかな流れ DKIMレコードの生成 - Google Workspace DNSへ生成したレコードを登録 - お名前.com 認証開始 - Google Workspace DKIMレコードの生成 Google Workspaceの アプリ → Google Workspace → Gmail の設定 →メールの認証 DKIM認証で対象ドメインの「新しいレコードを生成」 しばらくするとレコードが生成される お名前.com へレコードを追加 ドメインNavi へログイン「DNS設定/転送設定」を開いて 該当するドメインを選択後「次へ」 「DNSレコード設定を利用する」の「設定する」を開く txt レコードへ 1.で生成したレコードをコピペして追加 サブドメインで運用していない場合 サブドメインで運用している場合 (google._domainkeyの後に .サブドメインを付加) レコードを追加、保存後DNSの反映を待つ 認証開始 DNS反映後、Google Workspace へ戻って(開いて)「認証を開始」を行う

Brotherプリンタで「用紙サイズが不一致です」、用紙厚さ「封筒」の不具合

イメージ
Brother MFC-J7100CDW で Word や Excel からユーザー設定のページサイズを印刷した場合「用紙サイズが不一致です」が解消できない 印刷設定からプリンタープロパティを開いた時の画面 この時点で用紙サイズがデフォルトのA4等が表示されているのがそもそもおかしく プリンタプロパティ側のユーザー定義サイズを設定したところで不具合に変化はありません Wordがプリンタへ 任意の用紙サイズ 情報を送っていないのではないかと思われます 今回の対応は、pdf へ一旦出力して、Adobe Reader 等で印刷を行いました Excelも同様 また、pdf出力した内容を、Adobe Reader で封筒へ印刷しようとして、用紙厚さを「封筒」へ設定したところ、大きく余白が取られ、縮小もしくは一部しか印刷されない という不具合にあい、何故か用紙厚さを「普通」へ変更した所、問題なく出力されました こちらは、プリンタドライバ側の問題??

javascript 埋め込み json のエスケープ

アプリケーションから html 内の javascript 定数へ json を吐き出した時のダブルクォーテーションやシングルクォーテーションのエスケープでハマったのでメモ captionへ「Hello "World" '23」という文字列を投入しようとした場合 まずは、アプリケーションのjsonライブラリから得られる文字列     { "caption" : "Hello \" World \" '23" } 上記をjavascriptへシングルクォーテーションでそのまま落とすと      const json = '{"caption":"Hello \" World \" ' 23 "}' ; シングルクォーテーション('23の所)をエスケープして      const json = '{"caption":"Hello \" World \" \' 23"}' ;      const jsonArray = JSON . parse ( json ); 問題なさそげだけどブラウザに \"World \" の所でエラーが報告される これ、変数 json に代入された時点で \" がエスケープされて {"caption":"Hello " World " ' 23"} これを JSON.parse へ渡しても \" がエスケープされてないという事になる 正しくは  {"caption":"Hello \ "World \ " ' 23"} でなければならないので エスケープのエスケープが必要となる      const json = '{"caption":"Hello \\ "World \\ " \' 23"}...

PHP の list へ渡す要素数が不足している場合は array_pad で要素埋め

explode 等を用いて list へ配列代入時に要素数が不足している場合 array_pad で不足した要素数に指定した値(下記では '00') を入れる // $timestr = '14:30:20'; $timestr = '14:30' ; list ( $hour , $min , $sec ) = array_pad ( explode ( ':' , $timestr , 3 ), 3 , '00' ); 不足要素へ false 等を入れて、後で判定するのもありかも

SQL で既に作成した SELECT 結果の個数を取得

SQL で既に作成している SELECT文の結果個数を取得 頑張って複雑な SELECT文を作成したけど、個数だけ表示でいいと言われたりした時に RowCount に個数が入ります SELECT COUNT (*) AS RowCount FROM ( ここに元のSELECT文 ) AS dummy 元のSELECT文に id というフィールドがある場合、下記でもよい SELECT COUNT (dummy.id) AS RowCount FROM ( ここに元のSELECT文 ) AS dummy

Delphi の ListView スクロール時に残像のようなものが表示される → ランタイムテーマが原因

イメージ
以前から気になっていた Delphi の ListView(TListView) スクロール時に残像のようなものが表示される 基本的に仮想リストを使用しているので、通常リストは未確認 キャプチャできなかったので再現画像(一瞬だが↓こういうのが見える) 確認した項目 DoubleBuffered を有効にすると描画は早くなるが症状は残る DoubleBuffered を無効にすると、そもそもが遅くなる 複数の環境で再現→PCのスペックは関係なさそう リストの Count値は多くても少なくても発生 仮想リストの OnData で投入する文字列を定数にして、投入時間を最小限にしても再現 たどり着いたのが、 ランタイムテーマ これを無効にするとほぼ解消されます、ただし Windows2000 のような素のデザインになります 今回はオレオレアプリだったので、これで対応したけど...