2012-02-13 6 views
0

そしてGETパラメータを使用したくありません。ここで多くの異なるURLを単一のWebページに解決する必要があります

の詳細は以下のとおりです。

  • ユーザーは写真の束を持っており、それぞれの写真は、それ自体で示されなければならないとフォーム www.mysite.com/theuser/photoNumberのunuique URLを持っています

  • ユーザーの写真を表示するWebページは永遠に同じコード

  • -Nは、私は、ユーザーのために、彼らは彼らのギャラリーに新しい写真を追加するたびにユニークなURLを作成することですyユーザーとすべての写真 - 写真そのものだけが異なります。

  • ユーザーはPerson-AにURLを提供しますが、Person-Aはその1つの写真に1つのURLを持ち、他の写真を見ることができません(各写真には一意のURLがあり、Person-AにはURL写真)

私は(何とか)のみの写真の内容が異なっているとの唯一のWebページをロード終わるまで次のURLをしたい:

私は避けるようにしようとしている何
www.mysite/user-Terry/terryPhoto1 
www.mysite/user-Terry/terryPhoto2 

www.mysite/user-Jackie/JackiesWeddingPhoto 
www.mysite/user-Jackie/JackiesDogPhoto 

はこれです:持ちます唯一の違いは.jpegファイル名ですが、私のサーバー上に同じWebページの多くのコピー。

私は200人のユーザーがいて、それぞれに10枚の写真があります - それぞれの写真は別々のURLでページに表示されています - 今は2000個のWebページがあり、写真は、私のWebサーバーとすべてのページでスペースをとっており、ディスクスペースを浪費するHTMLコードと同じで重複しています。唯一の違いは、表示する写真の.JPEGファイル名です。

ディスクスペースの浪費を避けるためにできることはありますか?それぞれの写真に固有のURLがあるという要件を満たしていますか? もう一度パラメータでGETを使用することはできません。

+0

どのWebサーバーを使用していますか? Apache、nginx、IIS? PHPなどのサーバーサイドスクリプトを使用していますか(または使用できるか)。 – Twisol

+1

サーバーでURLを書き換えることはできますか?そうであれば、ユーザー側で何もせずに、これらのURLをサーバー側のGETサーバーに変換することができます。 –

+0

私はApacheとxamppで開発していますが、私のプロダクションサーバーはあまり管理していません。私のコードはphp、mysql、javascriptだから私はPHPでコード化することができます。 – wantTheBest

答えて

2

Apacheサーバーを使用している場合は、Apacheのmod_rewriteを使用してこれを行うことができます。あなたが書いているスクリプトは最終的にはGET変数(www.mysite.com/photos.php?id=photo-id)をフェッチしていますが、mod_rewriteはあなたが選択したフォーマット(www.mysite.com/user-name/photo-id)で提供されているすべてのURLを変換します。

実装する方法は、herehereですが、Apacheモジュール自体の実際のドキュメントはhereです。

+0

うわー、それは格調高いエレガントです。ありがとう。 mod_rewrite、ストレージスペースの売り手の友人ではありません。 ;) – wantTheBest

0

IISマネージャーに移動します。 IISでホストされているサイトに移動します。各URLに追加のバインディングを追加します。

これは、すべての要求を同じ場所にリダイレクトします。