人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

よくwikipediaなどwikiシステム(?)では、
例えば「イケメン」の項目なら、

http://ja.wikipedia.org/wiki/%E3%82%A4%E3%82%B1%E3%83%A1%E3%83%B3

といった具合に項目名をURLエンコードしたものがURLとなっていますが、
これについてのメリット・ディメリットで、ぱっと思いついたところでは、

メリット:
・URLの一意性を確保しやすい・わかりやすい
・URLに規則性がないため、ボットなどでのURLの総当たりが極めて困難
・ブラウザのアドレス入力フォームに知りたい項目名をURLに含めれば比較的楽にアクセスできる

ディメリット:
・URLがかなり冗長になる
・携帯からのアクセスを考慮するなら別のURLを用意してやらないといけない
(iモードの場合はアクセス可能なURLは256バイトまでのため)
・項目名とデータベースの紐付けが必要でサーバーに負荷がかかりそう

とこんな感じでしょうか。
上記以外でほかにありましたら教えてください。宜しくお願いします。

●質問者: xxmasaxx
●カテゴリ:コンピュータ インターネット
✍キーワード:iモード URL Wiki Wikipedia けが
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● kn1967
●35ポイント

>URLの一意性を確保しやすい・わかりやすい・比較的楽にアクセスできる

そうですね。これは大きなメリットです。

>URLに規則性がない

単語でのアタックが可能です。ただし、特定のアドレスからのアクセス集中などに対しては自動的に特定アドレスだけ一時アクセス禁止にすることも出来ますので大きな心配はありませんし、書き込みには登録とログインが必要ですからこちらも大きな心配は無いでしょう。

>サーバーに負荷がかかりそう

Proxyキャッシュを用いていればサーバー負荷は静的ページと大差無いです。

>256バイトまで

イケメン4文字で36バイトですから全角25文字程度まではキーワードとして入力可能ですが全角25文字よりも長くなるようなキーワードってどの程度考えらるでしょう?


以下、システム面から見た回答です。

イケメンなどのキーワードを送るには

・GET(URLの一部に情報を入れる)

・POST(別途で情報を送信する)

二つの方法があります。


POSTの場合は入力フォームを用意するか、もしくはJAVAScriptなどのクライアントサイドスクリプトで入力フォーム同様の処理を行わせるといった面倒な手間がかかります。

GETの場合はリンク先URLの末尾に付けるだけですから仕組みは非常に簡単になります。

(サーバー負荷はGETのほうがシンプルで軽いです)


WIKIの場合はGETの変形的なものとなります。

http://ja.wikipedia.org/ というサーバーは wiki/%E3%82%A4%E3%82%B1%E3%83%A1%E3%83%B3 というアドレスを受け取った時点でアドレス変換(rewrite)を行ってイケメンという単語をデータ検索プログラムに渡して動的にページを生成させます。

アクセスの度に動的ページを生成していたのではサーバー負荷は結構なものになってしまいますが、

http://ja.wikipedia.org/wiki/%E3%82%A4%E3%82%B1%E3%83%A1%E3%83%B3

という表記は静的ページの場合と同じ命名規則になってますのでProxyキャッシュが静的なページとして保持してデータベースに替わって応答してくれますので、データベースへの負荷はそれほど大きくはなりません。

◎質問者からの返答

回答有り難うございます。

>Proxyキャッシュを用いていればサーバー負荷は静的ページと大差無いです。

あ、キャッシュとかは考えなくて単純に動的に作成した場合のことを考えてました。

キーワードとデータベースのIDを紐付けするテーブルが必要(だと思う)ので、ン百万ページ単位だと、キャッシュのヒット率も当然低くなるし、そのリソースも馬鹿にならないだろうなぁ、と。

まぁ、全体から見ると微々たるものだと思いますけどね(汗)

>イケメン4文字で36バイトですから全角25文字程度まではキーワードとして入力可能ですが全角25文字よりも長くなるようなキーワードってどの程度考えらるでしょう?

256バイトについては、例えば256文字(バイト)以上のURLをコピペして携帯にURLを送った場合、256バイト以降は無視されてしまうため、携帯からそのURLはアクセスできない、といったことがでてきます。仰る通り大方25文字以内で収まると思いますが、25文字以内に収まらないものは利用者に諦めてくれとは言えませんのでその時どうするの?といった話です。

説明が足りなくて失礼しました。。


2 ● kn1967
●35ポイント

長いURLを携帯に送る場合は http://tinyurl.com/ などで短いURLにして送れば良いと思いますよ。

◎質問者からの返答

む?、やっぱりそうなりますかね。

有り難うございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ