2013年12月18日水曜日

MySQLで FULL OUTER JOINする方法

MySQLでの完全外部結合 | misty-magic.h .

なるほど

2013年12月11日水曜日

Apacheで 403の代わりに 404を返す方法

Apache(+ PHP)で、存在するがアクセスを拒否する場合に、存在することを示唆してしまう 403 Forbidden の代わりに、404 Not Found を返すための設定例。

httpd.conf
ErrorDocument 403 /404.php
ErrorDocument
404 /404.php
403と404で違うものを返したら意味が無いので、同じものを返すようにする。

404.phpの例
<?php header('HTTP/1.1 404 Not Found') ?>
<!DOCTYPE html>
<html>
<head><title>404 Not Found</title></head>
<body>
<h1>Not Found</h1>
The requested URL was not found on this server.
</body>
</html>
ポイントは、header()でHTTPステータスを指定していること。
IEだとこの表示内容は使われずに、IE独自のエラー画面が表示される。

きちんとやるなら、トップページへのリンクや検索窓付きのきちんとしたページを作れば良い。

(参考)403エラーの代わりに404エラーを返す | 時の回廊 .

2013年12月5日木曜日

2013年11月21日木曜日

MySQLで大文字と小文字を区別する SQLの書き方

MYSQLのCHAR、VARCHARカラムの大文字小文字を区別する(binary) - 神宮球場近くで働くSEのブログ

select * from binary_column where binary varcolum = 'AbCdE';

.メモ

CakePHPで実行した SQLを確認する方法

PHPのこととかPHPのこととかをつらつらと: cakephpでSQLを見たい時。。。 .

ViewがHTMLじゃないからログに出力したい場合に使える方法。

最後ログに出すなら

$this->log(..., LOG_INFO);

みたいな感じで。

DBで Indexのみにアクセスしてテーブルにアクセスしないことを

何と呼ぶかど忘れしたのでメモ。

 

MySQLでインデックスを使って高速化するならCovering Indexが使えそう - (゚∀゚)o彡 sasata299's blog

ただ、ここで [foo, hoge, fuga] という複合インデックスを張ることで、リーフだけで必要なデータが全て得られ、その後のランダムアクセスが無くなるため高速になります。このようなインデックスだけで完結するインデックスを Covering Index と言うそうです。

.

2013年11月8日金曜日

EC2のマイクロインスタンスにはデフォルトでは swapが無い

EC2とSwap領域についてまとめてみる - okochangのインフラ日誌

先ほどSwap領域を割り当てていた、デバイスファイルが存在しません。
EC2をt1.microで起動した場合の制限としてInstance Store Volumesを割り当てられませんが、それと同じような制限みたいです。

.

swapの作り方は下記が分かりやすい。

Amazon EC2 t1.micro インスタンスでswapを使用する - blogですかい

 

swapを作るとEBSのI/O課金が発生するので注意とのこと。
↓
Amazon EC2編~microインスタンスのSWAP領域について~ | ナレコムAWSレシピ

 

2013年11月2日土曜日

HTML5のセキュリティで気を付けること

HTML5 を利用したWeb アプリケーションのセキュリティ問題に関する調査報告書 .

onXXXじゃないハンドラー系属性がHTML内に書けるとか、細かいこと書いてある。

Windows Server 2008 R2に cleanmgr.exeをインストールする方法

Windows Server 2008 R2(R2以外も?)には、通常のWindowsのようにエクスプローラでCドライブ等を右クリックして「プロパティ」を表示しても、「ディスクのクリーンアップ」ボタンが表示されないので、インストールする必要がある。

Windows Server 2008 R2にディスクのクリーンアップをインストール - しょぼんメモリ (´・ω・`) .

ファイルをコピーする方のやり方は再起動不要。
cleanmgr.exeとcleanmgr.exe.muiの両方をコピーする必要がある。cleanmgr.exe.muiはja-JPフォルダに入れる。(マルチランゲージインターフェース?)
実行するにはコマンドプロンプトで"cleanmgr"を実行する。(コピー後もCドライブのプロパティにはクリーンアップボタンは表示されないので。)

Windowsの WEPキー

シリコンバレー 24時: WindowsXPにおけるWEP暗号化キー入力はヘキサかアスキーか?

WindowsXPのWEPキー入力部分には、 暗号化の64ビットと128ビットの選択がないが、これは入力されたキーの桁数から 判断しているようだ。ここに入るキーは、5桁、10桁、13桁、26桁のいづれかであり、 かつ、10桁、26桁の場合は、16進数である 0〜9,A〜F でなければならないことになっているようだ。

.

入力文字数によりASCIIの入力か/16進数の入力か、64ビットか/128ビットか、を判断して適切に設定されるらしい。
ASCIIで入力しても、登録後にマスクを外して表示すると16進数で表示される。

2013年10月30日水曜日

2013年10月29日火曜日

JavaScriptでページを遷移せずに URLを変える

AjaxでもURLを更新して履歴を作れるHTML5のpushState試してみた | webOpixel

履歴を残すだけならクリックイベントのところに「window.history.pushState(null, null, nextPage);」を追加します。
第3引数に追加した文字列にURLが切り替わります。

.メモ。

Androidでステータスバーに表示した通知をタップされた時にアプリを表示する方法

メモ

JPEGminiとJPEG Minimizerの比較

  • 元の画像 = 302KB
    • JPEGminiで変換 → 190KB
      • さらにJPEG MInimizer(Quality=50)で変換 → 93KB
    • JPEG Minimizerで変換(Quality=50) → 87KB
      • さらにJPEGminiで変換 → 88KB(増えた)

Androidアプリ開発:サスペンド防止の調査

  • KeyguardManager の exitKeyguardSecurely() メソッド及び newKeyguardLock() メソッドと、サブクラスの KeyguardManager.KeyguardLock は deprecated になっています。
    これらのメソッドの代わりに WindowManager.LayoutParams クラスの FLAG_DISMISS_KEYGUARD と FLAG_SHOW_WHEN_LOCKED を使うことが推奨されています。

未来の自分のためにメモ。

Windowsと IEのバージョン別対応表

Internet Explorer - Wikipedia .

 

Windows 8はIE10のみ。IE11を使うためにはWindows 8.1へのバージョンアップが必要。

2013年10月23日水曜日

iPad Airの最大の特徴

iPad Airと新型iPad miniはなにが違うのか? 歴代iPadスペック比較表

厚みはiPadシリーズで過去最も薄く、第4世代より約2mm減、本体の重さは183gも軽くなりました。

まあ軽くなったこともそうなんだけど、幅がかなり余分なとこが減ってスリムになったみたい。でもやっぱり軽くなったことか。

2013年4月12日金曜日

MySQL 5.5.3以前だと主キーが NULLでなくても IS NULLが TRUEになるらしい

MySQLで "SQL_AUTO_IS_NULL = 0" じゃないと、IS NULLで検索されたときにエライ目に遭うという話 - (゚∀゚)o彡 sasata299's blog
実はこれが曲者です!! id が NULL のデータなんて無いから必ず insert するだろうと思っていました。思っていましたが実際に試してみると、、、

なんかときどき update してるんですけどー。

MySQL 5.5.3からは変わったらしい。
↓
MySQL :: MySQL 5.5 Reference Manual :: 12.3.2 Comparison Functions and Operators


The default value of
sql_auto_is_null is 0
as of MySQL 5.5.3, and 1 for earlier versions.


2013年4月11日木曜日

cronでエラーをログに残しつつメールも出す方法

UNIXの部屋 コマンド検索:tee (*BSD/Linux)
あるコマンドの出力をパイプを使って他のコマンドに渡したいが、画面にも表示したい、という場合、tee を使う。

やりたかったのはこれだ!

というわけで、PHPを実行して標準出力とエラー出力をログに残しつつ、エラーがある場合はメールも出す方法。(未検証)
(php test.php 1>>test.log) 2>&1 | tee -a test.log



ブログ アーカイブ

カテゴリー