2017年7月25日火曜日

Docker 17.06 Updates 最近何が変わったの?

JavaScriptのナイスな文法テクニック集 - Qiita

ドキュメンテーション生成ツール「Sphinx」をJavaScript向けに改良した「sphinx-js」 | OSDN Magazine

Interactive HTML Cheat Sheet (Including New HTML5 Tags) For Beginners

SMBv3にも対応したGoogle謹製Sambaクライアントアプリ「Android Samba Client」でスマホからNASにアクセスする方法を紹介!Wi-Fiなど経由で手軽にファイル共有が可能【ハウツー】 - S-MAX

2017年7月19日水曜日

iPadのSafariでタブ非表示になったときresizeイベントが発火しないので困った

Mobile Safariでタブ切替、ウィンドウの表示非表示を検知する方法 | SRIA BLOG – 宮城県仙台市のWEBシステム開発・スマホアプリ開発
https://www.sria.co.jp/blog/2014/08/in-the-mobile-safari-tab-switching-how-to-detect-non-show-window/


※画面の表示、非表示を検知する

window.addEventListener("pageshow", function(){
  //表示された
});

window.addEventListener("pagehide", function(){
  //非表示になった
});

windowのpageshow、pagehideイベントをハンドルするだけです。
これでfunction内に処理を記載すると、画面が表示、非表示に切替されるタイミングで
任意のコードを実行できるようになります。

基礎からはじめる物理ベースレンダリング - Qiita

ITインフラって面白い!一般人でも分かるインフラの入門スライド10選

200行のコードへのブロックチェーンの実装 | プログラミング | POSTD

Essential Electron : Electronの簡潔・平易な概要 | プログラミング | POSTD

2017年7月18日火曜日

ユーザ登録の有効化メールが送られる仕組みを調べました。 - Shinichi Nishikawa's

https://nskw-style.com/2011/wordpress/how-wp-works/create-user-validation-email-at-multisite.html

WordPressユーザのログインを無効化するプラグイン!簡単に任意のアカウントを凍結する方法! | 自作PCテクニカルセンター

WordPressの新規ユーザー登録完了時に送信されるメールの内容をカスタマイズする | ミズタマブログ

高品質な7000以上のデザインアイコンまとめ「7000+ Material Design Icons – Ultimate Icon Roundup」 | DesignDevelop

AWS をフル活用して「サーバレス」な SPA を実装できる「サーバーレスシングルページアプリケーション」を読んだ - kakakakakku blog

2017年7月11日火曜日

最小限のHTML5テンプレート

HTML5でWebページを作成する時用の必要最小限をまとめたシンプルなテンプレート(IE8以下も配慮) | コリス
http://coliss.com/articles/build-websites/operation/work/generic-html5-template-by-sixrevisions.html

<!DOCTYPE html>
<html>
<head>
<!-- IE8+に対して「IE=edge」と指定することで、利用できる最も互換性の高い最新のエンジンを使用するよう指示できます
参考: https://www.modern.ie/en-us/performance/how-to-use-x-ua-compatible -->
<meta http-equiv="X-UA-Compatible" content="IE=edge">

<!-- ページのタイトルを記述 -->
<title></title>

<!-- パフォーマンスのために使用する文字のエンコーディングを記述
参考: https://developers.google.com/speed/docs/best-practices/rendering#SpecifyCharsetEarly
-->
<meta charset="utf-8">

<!-- content属性にページの紹介文を記述 -->
<meta name="description" content="">

<!-- content属性にページの著者情報を記述 -->
<meta name="author" content="">

<!-- モバイル端末への対応、ページをビューポートの幅に合わせてレンダリング(Android, iOS6以降)
ズームを許可しない設定「user-scalable=no」は加えない -->
<meta name="viewport" content="width=device-width, initial-scale=1">

<!-- スタイルシートはできるだけ早くレンダリングされるため、HTMLドキュメントの上の方に記述
href属性にスタイルシートファイルのURIを記述 -->
<link rel="stylesheet" href="">

<!-- IE8以下用に2つのスクリプトを記述
html5shiv.js: IE8以下にHTML5の要素を認識するようにさせる
respond.js: IE8以下にMedia Queriesの代替え機能を提供 -->
<!--[if lt IE 9]>
<script src="//cdn.jsdelivr.net/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->

<!-- href属性にファビコンファイルのURIを記述 -->
<link rel="shortcut icon" href="">

<!-- コメントアウトしてあるコードは、iOS/Android用のアイコン指定 -->
<!--
<meta name="mobile-web-app-capable" content="yes">
<link rel="icon" sizes="196x196" href="">
<link rel="apple-touch-icon" sizes="152x152" href="">
-->

<!-- スクリプトでブロッキングを起こさないものはここに記述
可能であれば「async(文書の読み込みが完了した時点でスクリプトを実行)」を使用
Example: <script src="" async></script> -->
</head>
<body>

<!-- コンテンツを記述 -->

<!-- スクリプトでブロッキングを起こすものはここに記述
ブロッキングを起こす原因としては、CSSのセレクタ操作(IE)、負荷の高いDOM操作、多数のスクリプトなど -->
<!-- SCRIPTS -->
<!-- 例: <script
src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
-->
</body>
</html>

AWS ELB EC2がメンテナンス中はS3に転送する方法

ELB+S3でSorry - systemlog
http://system999.wiki.fc2.com/wiki/ELB%2BS3%E3%81%A7Sorry

2017年7月5日水曜日

Gitで差分ファイルを抽出+zipファイル化する方法 | 株式会社グランフェアズ

WordPress ループ・カスタムクエリ・アーカイブ解説

WordPressの新・旧ループからカスタムクエリ・アーカイブまで徹底解説 | OXY NOTES
http://oxynotes.com/?p=8615

AWS、VPS、実サーバ おおよその性能比較

通常のconcrete5のキャッシュを全てONにすると実サーバだと、
87リクエスト×60秒×60分×24時間×30日=225,504,000アクセス
捌ける事になります。

実際には1つのページで1リクエストではなく、jsやcss、画像ファイルなどがロードされますし、ページ毎に処理速度も違うので、おおよそ月間1千万PVくらいの処理能力でしょうか。

クラウド(AWS)、VPS、実サーバで、費用ベースのconcrete5のベンチマークをしてみました。 コンクリートファイブ ジャパン株式会社

2017年7月4日火曜日

AWS ELBでHTTP→HTTPSリダイレクトができない件

Amazon Linux / Apache で

かなり試行錯誤しましたが、以下の記事を参考にしてなんとかできました。

AWS Elastic Load Balancer と Apache を使って HTTPS(SSL) 通信を行うための設定方法 - komiyakの通り道
http://d.hatena.ne.jp/komiyak/20130807/1375845025


多くのサイトでは .htaccess内に以下のように記述しろと書いてあるのですが、なぜかダメ...

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} ^http$
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]


上記サイトを参考に
RewriteCond %{HTTP_USER_AGENT} !^ELB-HealthChecker
を入れてみましたが、

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} ^http$  #←ここがどうも認識されていない?...
RewriteCond %{HTTP_USER_AGENT} !^ELB-HealthChecker  #←これも必要
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

これもだめ。

以下のようにPortで判定するようにしたら、できました。

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Port} ^80$  #←Portで判定
RewriteCond %{HTTP_USER_AGENT} !^ELB-HealthChecker  #←これも必要
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]


少々釈然としませんが、時間のあるときにまた調べてみます。

※なぜリダイレクトがエラーになるかは以下が参考になりました。異なる対処方法も書いてあります。
AWS環境でELB(ロードバランサー)とEC2サーバでapacheを使っている場合にhttpからhttpsにリダイレクトする方法 – joppot
https://joppot.info/2014/05/01/1286

AWS ELBを使う際に注意すべきこと

1.ELBを使うと、HTTP→HTTPS リダイレクト設定が無限ループになり接続できない。

2.ELBを使うと、アクセス元IPアドレスがELBのIPアドレスになるので、アクセス解析に注意が必要。


AWS ELBを使う際に注意すべきこと
https://tech.basicinc.jp/AWS/2013/07/21/aws_elb_point/


ELBを使ってアクセス元のIPを取る方法 - ELBに限らないよ
https://tech.basicinc.jp/AWS/2013/04/28/aws_elb_customlog/

Apache KeepAlive設定

実用 Apache 2.0運用・管理術(3):httpd.confによるWebサーバの最適化 (2/3) - @IT
http://www.atmarkit.co.jp/ait/articles/0509/16/news128_2.html