PHP5 .htaccessによるBASIC認証のときのユーザ名取得には$_SERVER[‘REMOTE_USER’]を使う

うーんサーバ移行ではまった。

以前のプログラムではBASIC認証が行われていないと、認証ダイアログを出してサイドアクセスを要求するつくりになっていた。サーバが変わってもこんな単純なものすぐ動くだろうと思ったが、何度やっても認証にパスしない。

if (!isset($_SERVER['PHP_AUTH_USER'])) {
    header("WWW-Authenticate: Basic realm=\"INPUT ID AND PASSWORD\"");
    header("HTTP/1.0 401 Unauthorized");
    exit;
}

調べてみるとPHP_AUTH_USERが空白となり取得できていない。
なんで!!と調べてみたところこのサーバ移行先では諸所の事情により.htaccessによる認証をかけていた。その場合はREMOTE_USERというもので取得できるそうな。

echo $_SERVER['PHP_AUTH_USER'];
echo $_SERVER['REMOTE_USER'];

このコードで試してみたら、確かに下段の記述でユーザ名を取得可能なのであった!細かい違いにびっくり

カテゴリー: Apache, PHP | コメントする

【書評】AndroidSDK開発のレシピ

Androidでの逆引きリファレンス的な本。

内容的にはAndroid特有なもの意外にJava一般で使われるレシピも含まれている。

入門書を一通り終えて、何か困ったときに手元においておくと良い本かな。
同類にAndroidSDK逆引きハンドブックがあるけど

本書の目次を見ただけで各解決策をすぐに思い浮かべられる上級者には不要かもしれない。

カテゴリー: 書籍 | コメントする

2011/08 ブラウザシェア

Google Analyticsによるブラウザシェアチェック。サンプル母数は1万6千セッションほど。

IEが47%,FireFoxが27%,Chromeが19%,Safariが2.7%,Operaが2.4%そしてAndroid Browserが1.16%と初の1%超え!

IEの内訳は8が56%,6が17%,9が13.67%,7が13.49%

9が意外に伸びない一方で6が消えてくんない!!

カテゴリー: 統計情報 | コメントする

USBデバイスサーバ BUFFALO LDV-2UH

地上波デジタルのアンテナがないため、室内アンテナ(UAH-800)に頼る生活だが、二階に置かないとテレビ埼玉しか映らないためなんとかしたいと思ってたどり着いたのがUSBデバイスサーバという選択肢。

これはUSB機器をLAN経由で使えるようにしたもの。なので2Fの受信感度最高の位置にアンテナとチューナを配置して、LAN経由で1FのPCからUSB地デジチューナを利用すれば無事目的が果たせるだろう。というわけでまずは試運転をしてみた。

秋葉原にいけば格安であるらしいけど、今回はBUFFALOの地デジチューナとの組み合わせが確実ということで同じくBUFFALOのLDV-2UHをチョイス。USBデバイスサーバの仕組みはUSBと該当PCのハブの役割をするツールを介して接続されるので、通常のUSBとは一枚あいだに挟まる点が違う。しかしなれれば気にならない程度。

とりあえずMIDI(YAMAHA MU-2000)とDT/F110-U2の二つを試してみた。二つのPCで接続を変えないで使いまわせるのは便利!うーむ4ポートほしかったかも!

カテゴリー: Hardware | タグ: | 3件のコメント

CakePHP ~を使わないシリーズ modelをつかわない

CakePHPのように暗黙の規約があるとそれからそれるときに困ってしまうのか、「~を使わないシリーズが」好評である。

これまでviewを使わない。layoutを使わないシリーズを取り上げてきたが、今度はModelを使わない。これはDBを使わない単なるTOPページに利用する場合につかうテクニック。

$uses = null;

これだけ

カテゴリー: CakePHP, PHP | タグ: | コメントする

Linux上からMBMをインストール

最近になって使い始めたMBM

公式サイトにisoイメージもあって通常であればそちらを一枚焼いておきインストールするのが王道だけど最近では光学ドライブ無しパソコンも増えているのでそんな時のためにLinux上からコマンド一発でインストールできるパッケージがある。

こちらのページからダウンロード可能。インストール方法も丁寧に書いてある。

MBMをLinux上でインストール可能にするパッケージ

カテゴリー: マルチブート | タグ: , | コメントする

MBR(マスターブートレコード)に入れたgrubをPBR(パーティションブートレコード)に入れる

これまではWindowsを最初にマルチブート構成にしてから、迷うことなくあとからLinuxを入れてGrubをMBRに入れていた。これで失敗したことはないのだけど、ただLinuxを複数入れると後のものが前のLinuxを起動できなくしたり(手動で修正する必要がある)、若干不便を感じていた。

というわけでマルチブートについて0から勉強開始。まずLinuxのgrubをMBRに入れるのはやめて、評判の高いフリーのブートマネージャーMBMを使うことにした。

そのためには一度MBRに入れてしまったgrubをPBRにインストールしなおす手順。まず事前に自分がどのパーティションにLinuxをインストールしたかを調べておく。自分の場合Linuxは拡張パーティションに入れることが多いので/dev/sda5以降が多い。以下はCentOSでの例。他のディストリビューションはちょっと違うので参考程度に。

grub-install /dev/sda5

あとはMBMを後から入れれば、各PBRのgrubをチェーンロードしてくれるはずだ。

カテゴリー: Linux, コマンド | コメントする

FireCookieでCookieを編集(偽装)

編集というなら聞こえはいいけど、世の中Cookieの偽装需要があるらしい。

というわけで以前はIEのCookie Editorを紹介したけど、だいぶ情報が古いので最新の情報をお届けしよう。

やはりかゆいところに手が届くプラグインが豊富なのはFireFoxというわけで、FireCookieというプラグインでCookieが編集可能になる。ちなみに名前からも分かる通りFireBugの拡張なのでFireBugも必要。

一応こちらの方法でCookieは編集できるけども、内部のテストで有効期限やパスを変えてみたりするぐらいしか実用的な利用方法としては思い浮かばない。あとはセッションCookie(ブラウザ閉じると消えるCookie)を有効期限をつけて、ログイン状態を長く保つようにするぐらいしか思い浮かばない。こちらもサーバ側でタイムアウトの時間が短ければ意味ないしね。Cookieの改竄、編集、偽装はあくまで自サイトへのテスト目的ということでご利用は自己責任でお願いします。

カテゴリー: WebApp | コメントする

CentOS6 インストール記録 x64編

待望のCentOS6がリリースされてからはや一ヶ月が経とうとしている。
ハードウェアの空きがなかったので、VirtualPCにネットワークインストールを試みて以来実機にはインストールしていなかったのであるが、やはり実機にインストールして自宅サーバーリプレイス用にしなければもったいないとDVDを夜のうちにダウンロードしておいた。

x64の場合DVDは2枚あり、どうせインストールの途中で入れ替えがあるのだろうと思ったら、フルパッケージを選択しない限り二枚目は不要。自分の目的はデスクトップと仮想化だったのでその二つを選んでインストールする限りはDVD一枚目だけでよいようだ。

さてここからは実機CentOS6インストール記録、すべてオンボードグラフィックのインストールなのでマザーボードとチップセットだけあげておく

■785G MSI MSI 785GTM-E45

時間がかかると思ってテキストインストールを選択、テキストインストールだとパーティション構成を自分で作る項目メニューがあらわれなかったため(ブランクディスクじゃなかったのも影響しているかも?継続調査)、しかたなくGUIインストールに切り替えた。デスクトップと仮想化のみ選択して、パッケージのカスタマイズは行わなかった。その後は順調に進みデスクトップも無事起動。さらにオンボードデュアルディスプレイも認識しており、マルチディスプレイ環境がインストール直後から稼動しているのがすばらしい。

■760G Shuttle SA76G2V2

こちらもWindowsが入っているマシンに入れるので、パーティションは自分で作りたいので最初からGUIインストールのつもりで起動。しかし760Gオンボードグラフィックスを認識できず強制テキストインストールへ移行。しかもその後なぜか同じDVDメディアを認識しなくなり手詰まり感。ディスクは上のマシンでインストール成功実績があるし、DVDの相性であれば最初から起動しないはず。というわけで時間はかかるけど、再びCentOS6ネットワークインストールに挑戦。およそ1時間ぐらいかけて最小インストール完了。このあとデスクトップ環境を後からインストールしなければいけないがそれは別のエントリーでまとめるとしよう。

x86版CentOS6はまだダウンロードしてきていないので、我が家に眠るたくさんの32bitマシンのインストール記録もUP予定。しかしインストールが一筋縄ではいかないのはやはりWindowsに比べるとハードルが高い。ディスク読み込み段階でカーネルパニックだったりした昔に比べればだいぶ改善されているのかな

カテゴリー: CentOS | コメントする

CentOS6 minimal isoイメージ登場

CentOS4.x系まではCD一枚でインストール可能なserver.isoというものがあり、GUIを使わないサーバー用途中心の自分としては都合がよかった。

CentOS5.x系では消えてしまって、巨大なDVDイメージを落とさなければならなくなったけど、CentOS6では最小インストール用にminimalパッケージが登場した。

とりえあずIIJのミラーサイトのリンクを張っておく、ここにCentOS-6.0-i386-minimal.isoというものがあり、これはCD一枚に収まるサイズ。これを用いてインストールすると最小構成だけど、手っ取り早くCentOS6のインストールが完了するというわけ。

ネットワークインストールでも自動で最小構成が選択されてしまうみたいなので、ネットワークインストールするぐらいならminimalパッケージをCDに焼いてしまったほうがよいでしょう!

カテゴリー: CentOS | タグ: , | コメントする