Archive "2016年8月"を表示しています。
2016.8.24 水
精神が破綻したエンジニアの特徴は – 文系である – 親が芸術家である – 貧乏である – キャメルケースが好きである – 自分以外は馬鹿だと思っている – 意外なことに美男 – サブカル (今後追加予定) という風になってます。
2016.8.23 火
WordPressの投稿でYoutubeとかのURLを貼って投稿するだけで動画サムネイルを自動的に取得してアイキャッチ画像として保存してくれるプラグインです。かなり便利です。 対応サービス Youtube Vimeo Facebook Vine Twitch Dailymotion Metacafe TED VK Blip Google Drive Funny or Die CollegeHumor MPORA Livestream Yahoo Screen Wistia Youku Tudou SAPO Rutube インストール プラグインの新規で「Video Thumbnails」で検索してインストールするか、 https://wordpress.org/plugins/video-t...
2016.8.23 火
WordPressでMarkdownを使うのだったら「JP Markdown」がいいです。Jetpackの一部らしくてJatpack系のプラグインをすでにインストールしていたら共通関数読みだすところでエラーになるかもです。 インストールして有効化したらすぐに使えるようになります。 MDを使う人だったら「ビジュアルモード」なんてもう使わなくなって久しい人が多いと思いますが、ビジュアルモードには勿論適用されませんのでご注意。
2016.8.20 土
1秒間に15万アクセスの事案発生 PVから計算する というとバルス祭りよりも大きい爆弾的瞬間アクセス数になります。瞬間アクセス数でいうとLine広告もすごい。瞬間アクセス数万規模になります。たかがそこらのHomeページがそういったアクセス数を叩き出すことはまずありえないというのが実情で、実際はウソでした。Googleアナリティクスのリアルタイム計測で100,000以上の数字が見えている!っていうだけで、特にそれ以外になにものでもないというわけでした。 よくよくエンジニアに聞いてみると、 100,000PV/h たいしたこっちゃない。 なので、一秒間の瞬間風速を計算すると、 ≒ 1,666/m ≒ 27/s 1秒間のアクセス数は27です。普通です。ロリポップでもさばける。(かも。)webサーバ...
2016.8.19 金
Thunderbird Download Gmailをブラウザー越しで使うのがいちばんシンプルなのですが、いろいろ理由合ってPCにメーラーを入れることになりました。 とはいえ、インストールと設定が一瞬で終わりました。MozillaにGmailのMailサーバー情報(ホスト)がデータとして保持されていて、それを選択するだけ。また更にアプリ連携しているので連携を許可すれば完了。この感じはなんかヤバイ感じがします。
2016.8.18 木
SSH経由でscpコマンドを実行するには、ログインしてscpを実行する方法と、SSHの鍵にパスワードをかけないで自動的にログインしてscpを実行する方法があります。前者は作業者が手動で行う時、またはセキュリティー上そうしなければならない時に行います。後者はscpでファイルを転送するホストがLAN内にあるとかセキュリティー上パスワードを設定しなくてもいい場合にcronなどで自動的にバックアップを行う時などに便利です。いろいろ使いどころはあるのでいずれにしろ両方覚えておいた方がいいです。 前者はscpのコピー元からコピー先のホストにSSHでログインできる必要があります。公開鍵の設定などを事前に済ませておかなくてはなりません。SSHの接続の準備をしておきます。後者は同様に鍵の設定をしますが、鍵生成...
2016.8.18 木
いろいろ考えて経験的にはこんな感じになるかと思っています。 開発に恐ろしい人数が関わっている場合があって、こういう場合はその統制やマネージメントのスキルというよりもむしろちゃんとしたインフラやネットワークがあるという方がよほどリスクヘッジになるのではないかというのが私の考え方です。これは何となく政治とか法律とかと似ていてどんなに頑張ってもなかなか独裁政治ができないようになっている…みたいな、そもそもの構造というかそういうものが土台として必要であるというわけです。議員内閣制とか間接選挙とかいろいろ。 開発というのはおもしろいもので、おそろしいほどの誤解の上で成り立っています。トップとボトムではおそろしく世界が違います。それは認識の差、技術の差、理解度の差、視座の差、いろいろありますが、それぞれ...
2016.8.18 木
圧縮とかアーカイブとか紛らわしい言葉がいっぱいありまして、圧縮=アーカイブみたいなことに世間ではなっていますが、本来は全然違います。圧縮はアーカイブでもないし、アーカイブは圧縮ではありません。それはなぜかというと、アーカイブはバラバラのファイルを1つの書庫にまとめることをさしています。これは、もうただ単に1つにまとめることで、複数のバラバラのファイルを1つにして持ち運びしやすくするだけのものです。開発中のログ関連を1つにまとめておいて、後からデバックしやすくするとか。アーカイブされたものは後からバラバラにすることもできます。 圧縮は、その名の通り圧縮してファイルサイズを本当に小さくしてしまいます。これはアーカイブとは全然関係ありません。1つのファイルを対象にもできるし、複数のファイルを対象に...
2016.8.16 火
file_`date "+%Y%m%d_%H%M%S"`.txt file_20140409_111255.txtというファイルができます。私はたいていcronでバックアップファイルを作るときなんかに利用してます。 mysqldump -u user -h localhost -pPASSWORD sample_db sample_tbl > /tmp/dumpfile_`date "+%Y%m%d_%H%M%S"`.sql とかいうのもいいです。 dateコマンドのフォーマット dateコマンドにはフォーマットがいろいろあるでいろいろ使えます。 文字列 指定した文字列を表示する %H 時 (00〜23) %I 時 (01〜12) %k 時 ( 0〜23) %l 時 ( 1〜12) %...
2016.8.15 月
WordPressとかSymfonyは軒並みルーティングしてしまうので普通にファイルを置こうと思うとちょっと困るのでそういうときは特定のディレクトリだけRewriteの除外をするのがよいです。 <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !^/poipoi/(.*)$ ←これ追加 RewriteRule . /in...
2016.8.15 月
mod rewriteは結構奥が深いです。通所のリダイレクト処理であるならばそれほどでもないのですが、深まれば底なしです。mod rewriteが通常のリダイレクトと違うのはApacheサイドの作業なのでURLを保持したままリダイレクトするということです。実際のファイルの階層構造では行ったり来たり、ジャンプしたり、端折ったり、無視したり…といろいろやっていますが、URL上では酷くクールに見えるというわけです。 mod rewriteの機能の特徴的な部分は、 あたかもマルチドメイン的な振る舞いをする。(あたかもではなく、そのままマルチドメインになるわけですが…) 動的なファイルをHTMLファイルなどに見せかけることができる。 ファイルやディレクトリ以外でもApacheの...
2016.8.15 月
ポートで判別する ポート80で来た場合はhttpsにリダイレクト RewriteEngine on RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] ポート8443に来た場合はhttpにリダイレクト RewriteEngine on RewriteCond %{SERVER_PORT} 8443 RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R,L] SSLアクセラレーター(LB配下の場合とか) LBなどで冗長化されている場合は、リダイレクトループになったりしてかなりひどい目に合いました。 LBの機能に...
2016.8.9 火
こういう形式でURLをつくってあげると、ユーザー名、パスワードを入力しなくとも認証できます。 URL: http://example.com/hoge/huga/ username: USERNAME password: PASSOWRD の場合、 http://USERNAME:PASSOWRD@example.com/hoge/huga/ とはいえ、これ平文で流れるのでSSL配下でやった方がいいですね。ほんとうは。 いろいろ使いどころはあると思うのですが、認証のゆるい画像の直リン防止やそういうのかな。
2016.8.4 木
趣味だか仕事だか人生だかでいろいろなサーバーを使います。机の下PCから巨大データセンター、行ったことのない外国のリージョン、本当にいろいろです360円/月から数十万円/月までいろいろです。ですが、その中でもSakuraは全般的にクソサーバーです。というと語弊がありますが、実際は、プロ向けではなく半プロ向けというか小規模ユーザー向けというかターゲットが全然違うということになります。さくらに文句言うならAWS使えよという話になります。 さくらのVPSは突然制限かけられて激重になるから要注意 2013年の記事になりますが、現在もこのようなサービスを続けているのがさくらです。こちらの方の記事内にあるようにSLAをうたっているサーバーを使うのが安全です。とくに業務に特化したものに関しては、さくらのVP...
2016.8.4 木
findでファイル名を検索 findはファイル名を検索します。ほんとにごく頻繁に使う便利なコマンドです。ディレクトリとファイル名を指定して検索しますが、例によってfind / -name “*”こういうコマンドはナンセンスです。検索したいディレクトリに移動してその下位ディレクトリを再帰的に検索するのかベターかと思います。 $ find . -name "*.html" ファイル数を数える ファイル数を数えるコマンドとかあったかもわからないけど、面倒なので書きだして行数数える。diffとる時なんかはこうやって書き出して比べてみるといいです。余分なファイルとか足りないファイルがあったりなかったり。 $ find . -name "*.html" &gt; html...
2016.8.4 木
データベースの削除についてディレクターや営業さんとの誤解がすごくてすごくてちょっとコラム的な記事にしてみました。タイトルはデータベースの削除になりますが、肝はデータ自体の削除と抹消という話になります。 データは通常HDDに永続的に保存されるので、データの保存という定義はHDDに保存されているというものでよいかと。メモリに一時的に駐屯しているデータについては電源引っこ抜いたりすれば何とかなるので、データ保持の定義からは抜いておきます。 とはいえここではDBに格納されているデータ(MySQL)を例にしてすすめます。 1. WEBページ上から消える DBから引っ張りだしたデータがWEBページ上で利用される、または表示されるという仕組みを使っている場合、WEBページ上から消えると素人さんはデータを削...
2016.8.4 木
WordPressの肝はポストされた記事やデータをループで取り出すところです。この動作をWordPress loopという言い方をしているようです。Wordpressの基本的な使い方の中核になるかと思います。 基本的なWordpress loop <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <div><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></div> <div><?php the_time('Y年n月j日'); ?&g...
2016.8.3 水
https://ja.wordpress.org/plugins/custom-post-type-ui/ Wordpressの投稿はデフォルトで「記事」と「固定ページ」しかないので、これ以外の投稿タイプを手軽に作れるプラグインがこれになります。プラグインのインストールをすると管理画面の左側メニューに「CPT UI」が現れます。そこから設定をして保存すると、新たな投稿タイプがメニューに現れます。例えば画像投稿に特化したものを作りたいとかタクソノミーを利用して商品カテゴリーを詳細に付随させたページを作りたいとかそういうことに使えます。 設定自体は、 – http://nullnote.com/wordpress/custom_post_taxonomy/ – http:...
2016.8.2 火
滅多に自分でシェルを書かないのでよくわからなくなったので整理します。 command para1 para2 para3 というのがあると、シェルの中では、 #!/bin/bash # 実行時に指定された引数の数、つまり変数 $# の値が 3 でなければエラー終了。 if [ $# -ne 3 ]; then echo "指定された引数は$#個" 1>&2 echo "実行するには3個の引数が必要" 1>&2 exit; fi # here document cat <<__EOT__ $1 $2 $3 $#個 __EOT__ exit;
2016.8.2 火
すごいわかりづらいので覚書。Windows10のVPN接続はアプリからサードパーティーのVPNクライアントをダウンロードしないとダメっぽいです。(とはいえ、あえてEndpoint Security VPNとかをダウンロードしなくていいというのはあります。) 今回はCheck Point Capsule VPNをダウンロードして使ってみます。 アプリからダウンロード サードパーティー製のVPNクライアントがインストールされていないのでアプリからVPNで検索して「Check Point Capsule VPN」をダウンロードします。無料です。 VPNの設定 ネットワークからVPNの新規設定を立ち上げるとVPNプロバイダーにWindows(ビルトイン)の他に「Check Point Capsule...
2016.8.2 火
javascript書いてると[object Object]というのが返ってきて、しかも中身が空という場合にどうやって判定したらよいかというお話です。 var obj = {}; if (Object.keys(obj).length === 0) { console.log(0) } オブジェクトのkeyをとってその長さを取得してというやり方になります。 この場合、オブジェクト自体はあるということになるので中身のkeyで判断しないとダメだというわけです。 if (!Object.keys(obj).length) { console.log(0) } これでもいけるっぽい。
2016.8.1 月
videoタグでIE11だけWebMの再生ができない。以下のプラグインをインストールすると一応見れるようになる。WebMMFSetup.exeが落ちてくるのでこれをインストール。 https://tools.google.com/dlpage/webmmf/eula.html 個人的にはこれでOKなんですが、WEBとしてみんなが見れるかどうかというのは非常に疑問なので、別の拡張子で再生できるようにするのかよいかと。