読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

iPhoneからのアクセスを判断して、.htaccessファイルで振り分ける方法とMobile Safariの制限

<スポンサーリンク>

Mobile Safariの制限事項

(1)ファイルのアップロード/ダウンロードができない
(2)マウスオーバーの表現ができない
(3)Flashなどのプラグインに対応していない
(4)フレーム表現ができない
(5)日本語フォントはヒラギノ角ゴのみ

スマホからのアクセスを振り分ける方法

(1).htaccessによる振り分けを行う
(2)JavaScriptによる振り分けを行う
(3)PHPなどのサーバ側の処理で振り分けを行う

中でも最も確実なのは.htaccessによる振り分けである。
利用しているWebサーバで、mod_rewriteというURLを書き換える機能が有効である必要がある。
.htaccessはそのディレクトリと、その下のディレクトリで有効なため、たとえばLAMPPをインストールした場合は

/opt/lampp/htdocs

直下に置けばいいはず。

iPhoneからのアクセスを振り分ける.htaccessファイル

たとえば、普通にApache on LAMPPが動いているサーバにアクセスすると、XAMPPのデフォルトの画面が現れる。
IPアドレスが「192.168.17.128」だったら、

http://192.168.17.128/

にリクエストすると、XAMPPって出てくる。
htdocsの下に

/opt/lampp/htdocs/iphone

というファイルを作って、適当にiPhone用のHTMLを用意。

/opt/lampp/htdocs/直下に
.htaccessファイルを作成する。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} iPhone
RewriteRule ^$ http://192.168.17.128/iphone/ [R]
</IfModule>

で、こんな感じで書くと、
iPhoneからのアクセスは全て、ttp://192.168.17.128/iphone/に転送する」
という設定ができる([R]というのはRewriteで、書き換え)
実際にiPhoneエミュレータでリクエストを飛ばすと、/iphone以下に作成したhtmlファイルにリクエストが飛ばされる。

linuxにXAMPPをインストールする

LinuxではLAMPPか。
以下のwebサイトで.runファイルをダウンロードして、rootユーザで実行するだけ。
http://www.apachefriends.org/jp/xampp-linux.html

用語

・セマンティックスとは、文書に対してデータとして意味を付与すること。

・サイトへのアクセスに使われたデバイスはユーザーエージェントを見て判断する。
ユーザーエージェントとは、Webページにアクセスするプログラムのこと。

勉強した本

HTML5+CSS3で作る  魅せるiPhoneサイト  iPhone/iPad/iPod touch対応

HTML5+CSS3で作る 魅せるiPhoneサイト iPhone/iPad/iPod touch対応


iPhoneサイトの作り方が丁寧に解説されている。
iPhoneアプリ開発の入門書。

感謝のプログラミング

今回で感謝のプログラミングは【630時間目】
10000時間まで、あと【9370時間】