2011年1月8日

IIS6 + ASP.NETで拡張子htmlのファイルを動的に処理する方法

SEO的な理由から、ASP.NETで拡張子htmlのファイルを動的に処理したいという要望があったので、設定して見た。今まで出来るとは知っていたけど実際にやってみた事は無かったので、次回の為にまとめておこう。

ちなみに拡張子をaspxよりもhtmlにした方がSEO的に有利なのかどうかについては、未確認だ。実際のところどうなんだろうか。

1. IISの設定 (IIS6の場合)

Webサイトもしくはアプリケーションのプロパティで「Home Directory」タブ内の「Configuration」を開く。

開いたら、Application extensionsの内、.aspxの設定を開いて確認し、実行パスをコピーしておく。
次に「Add」ボタンを押して追加し、aspxの設定と同じ内容を入力し、拡張子をhtmlに変えて「OK」を押す。
この時に「Verify that file exists」のチェックを外すのを忘れない様に。



2. web.configの設定 (ASP.NET 2.0の場合)

次に、拡張子が.htmlのファイルに対してリクエストが来た場合に実際には.aspxのファイルが呼び出される様に、web.configの <system.web> セクション内に urlMappings の設定を追加する。

 
<system.web>
  (省略)
  <urlMappings enabled="true">
   <add url="~/index.html" mappedUrl="~/index.aspx" />
   <add url="~/detail.html" mappedUrl="~/detail.aspx" />
   <add url="~/about.html" mappedUrl="~/about.aspx" />
   <add url="~/help.html" mappedUrl="~/help.aspx" />
  (など)
  </urlMappings>
</system.web>


この方法の難点は、ワイルドカードや正規表現が使えないので全てのページについてaddタグを個別に設定する必要がある事だ。
IIS7だともっと柔軟に設定出来るらしいが、IIS6ではサードパーティのISAPIフィルタを使わない限りはこれで我慢するしかなさそうだ。


追加の説明はこちら。
[ASP.NET]複雑なURLを別のURLにリマッピングするには?[2.0のみ、C#、VB]
http://www.atmarkit.co.jp/fdotnet/dotnettips/503aspurlmapping/aspurlmapping.html






.

7インチ超のAndroidタブレットが続々登場

何やら急に7インチ以上のAndroidタブレットがたくさん出て来たみたいで訳が分からなくなりそうだったので、リストにしておこう。
これから買うならやっぱりAndroid3.0搭載のものが良さそう。ちょっと見たところ、仕様的には Eee Pad MeMOとXOOMが一歩抜きん出ている模様。


ASUS 「Eee Pad MeMO」
ASUS、7インチタブレット「Eee Pad MeMO」を発表--携帯電話機能も搭載
Eee Pad MeMO タブレット発表、感圧スタイラス対応&デュアルコアSnapdragon 採用
ASUS EPad: like the EeePad, but with less ecstasy
ASUS Eee Pad MeMo – 7-inch Android Tablet Announced [VIDEO]

MOTOROLA 「XOOM」
MOTOROLA-XOOM 製品情報
Motorola、Android 3.0(Honeycomb)搭載タブレット「Xoom」を発表。2011年第1四半期にリリース
iPadを追撃せよ!モトローラの新タブレットはAndroid3.0マシン

DELL 「Streak 7」
[CES2011]Dell、7インチAndroidタブレット端末「Streak 7」を発表

Samsung 「GALAXY Tab」
Samsung、7インチのAndroidタブレット「GALAXY Tab」発表
Samsung Galaxy Tab 製品情報

AU (Samsung) 「SMT-i9100」
iPadの牙城を崩せるか!?auも7インチAndroidタブレット「SMT-i9100」を発表

NEC 「LifeTouch」
7インチはちょうどいい?NECのAndroidタブレット(LifeTouch)
NECビッグローブが7インチAndroidタブレット『Smartia』を12月6日に発売へ

Camangi 「FM600」
3G通信対応、7インチ液晶のAndroid搭載タブレット端末 (Camangi FM600)
Camangi製品情報


その他にもマイナーなメーカーからもたくさん出ているみたい。
パナソニックも「ビエラタブレット」なるものを開発中とか。

いずれにせよ今年のタブレット市場は楽しくなりそうだ。


---
2/15 追記
これは文章入力には良さそう。ATOKとキーボードでのコピー&ペーストは魅力的。
ATOKも“Ctrl+c”も使えるキーボード付きAndroidポケットノート












.

2010年12月31日

Waveとは何か (pamela fox's blog - Why I Love(d) Wave より)

GoogleのPamela FoxさんがWaveについてブログに書いている。

http://blog.pamelafox.org/2010/12/why-i-loved-wave.html

読んでみて、今まで自分はWaveについてちゃんと理解していなかったんだなぁと思った。Waveの本質ってなんだろうか。

Wave is a flexible and generic platform, one that can be used for groups discussion, for diary entries, for event commentary, for surveys. Of course, there are existing solutions for doing each of those things - but there is not one solution that does all of them.

Waveは柔軟で汎用的なプラットフォームで、グループの掲示板、日記帳、イベントの感想ノート、アンケートなどが出来るの。もちろん、これらの事が出来る個別のソリューションはこれまでにもあったけど、全部の事が出来る単一のソリューションと言うものは存在しなかったわ。

The thing I loved about Wave is that I could start a wave about a topic, and that wave could evolve from a survey to a discussion to a photo album (like when I asked folks what color I should dye my hair next), or be a combination of all three at once. I didn't have to know at the beginning what it would be, I didn't have to carefully weigh all the different options, I could just start a wave and see what it became.

私がWaveを好きなのは、ひとつのトピックを開始したら、それが徐々に単なる質問からディスカッションに変わったり、さらに写真アルバムになったり(私が髪の色をどうしようかってみんなに尋ねた時みたいにね)、それら全部の組み合わせに発展したりするからなの。最初から「どんな風にしようか」って考えたり注意深く別の選択肢を検討したりしないと行けない訳じゃなくって、単にwaveを作ってそれがどうなって行くか見ればいいのよ。

Sure, you can do event planning with just text, but throw in a date picker gadget, RSVP gadgets and maps, and you've made planning that much more compelling. You can write your blog post drafts with just the native features of Wave, but after you throw in an approval gadget and blog post publishing robot, you've got a full blog post workflow in Wave, one that can be easily shared with your colleagues.

例えばイベントの企画を単に文章だけでする事も出来るけど、日付選択用のガジェットを貼りつけたり、RSVP用のガジェットや地図を付け加えたりすれば、それだけで企画がずっと魅力的なものになるでしょう。Waveのネイティブな機能だけを使ってブログの原稿を保存しておく事も出来るけど、投稿を承認する為のガジェットと実際にブログに投稿してくれるロボットを付け加れば、完全なブログ投稿システムが出来上がるわ。そしてそれを同僚達に使ってもらう事も簡単に出来るの。


なるほど、そう言う事だったのか。

- 内容のフォーマットが柔軟。
- 定型処理の自動化、システム化が出来る。
- 他人と簡単にシェア出来る。

という辺りがポイントになるのかな。

引用した部分に続いて、Waveを使って実現した2つの事例を紹介している。

- Google Waveのチーム内で、サーバーのサポート業務のシステム化をガジェットを組み合わせて行った例。
- 外部の開発者がWaveエクステンションをギャラリーに投稿してから一般公開されるまでのプロセスでのコミュニケーションをWaveで管理した例。


そして最後は、次の言葉で締めくくっている。

I hope that the ideas of Wave keep going, whether through other Google products or the ever-growing Wave open-source community, because I don't want to live in a world without them.

Googleの他の製品、あるいはどんどん大きくなって来つつあるオープンソースWaveのコミュニティを通してWaveの数々のアイデアが続いて行く事を願っています。だってそれらが無くなった世界でなんて生きたくないから。


Waveに対する愛情がひしひしと感じられる。
彼女の願う通り、Waveで培われたアイデアや技術はこれからも生かされて行くだろう。


追記:
早くもこんなのを作り始めている模様。
http://blog.pamelafox.org/2010/12/google-shared-spaces-why.html
http://blog.pamelafox.org/2010/12/google-shared-spaces-how.html

Waveのコードが25万行なのに対してShared Spacesはたったの5000行と言うのも面白い。







.