2009-03-03 8 views
1

私たちのオフィスは、単に経験の多いこの新しい男を持って、我々は次のように絶対パスを使用して停止することを主張まま:

http://somesite.com/subdir1/images/filename.ext


それはそれは我々が言う呼び出して、ファイルの隣に置かれたときに私たちのイメージのパスを指しています




./subdir1/images/filename.extが、我々は前に絶対パスを使用する理由ではなく、明示的に

"../../" OR "./"

recursivelを入力するので、私たちは別のディレクトリに別のページを入れたときにdeadlinksを防ぐためだった。ちょうど使用することもできますy ...
実際に使用すると違いがありますか?
彼はそれぞれの絶対URLはサーバーへの別のリクエストだと言っています。しかし、私はこの方法を使っています。私は安全な応答時間を期待できます。誰でも私を啓発できますか?あなたのHTML上の特定のファイルを指しているとき、絶対パスと相対パスの間に違いがありますか?

答えて

3

すべてがサーバーへの個別のHTTP要求です。相対的または絶対的に重要ではありません。もちろん

、それは2 concurrent http requests limitを壊すので、同じウェブサイトに、異なるホスト上の絶対URLのポイントは、この物事をスピードアップすることがあります。たとえば、サイトがwww.example.comにあり、static.example.comのすべての画像が表示されます。

あなたが言及リンク切れの問題を防止するための別の方法は、仮想URLである:

+0

このスレッドは、違いがあることを示しているようです:http://stackoverflow.com/questions/8346926/using-absolute-versus-relative-paths-for-images –

0

絶対パスを/images/foo.pngすることになり根絶対、あなたが後で別のディレクトリにファイルを移動できるように十分な汎用性とリンクは引き続き機能します。ドメイン名を変更しても問題がなければ、リンクは引き続き機能します。

/foo/monkey-wrench.song 

相対パスは現在のページからの相対パスで、ファイルを現在のディレクトリの外に移動すると壊れます。

../foo/everlong.song 

ドメインパートをスラップすると絶対URLになります。

あなたはスクレーパーが一緒に来て、その後、彼らはあなたがリファラログを確認するとき、あなたはそのテイクダウン通知を送信して行くために誰が知っているように、自分のサイトにリンクすることができるならば良いです
http://example.com/foo/this-is-a-call.song 

に。

2つの違いは、後で自分で作成したいと思っている作業の量です。私は相対パスを使用してURL

0

はそれが可能あなたがすべてのパスを固定せずに別のドメインおよび/またはフォルダにあなたの全体のwebアプリケーションを移動するために作ります。

2

との衝突を避けるために、手動でRequest.RawURLを解析することを好む

+0

動的Webサイトでは$ siteurl = "http://somesite.com"で、 – lock

+0

@lockというオブジェクトごとにsiteurlをエコーするだけで、http変数から$ siteurl値を動的に検出することさえできます。最大への移植性:) – cherouvim

1

相対パスは、HTMLのサイズを小さくし、帯域幅消費を抑えます。

相対パスは「site.com」と「www.site」の両方を意味するコンテキストに対応しています。comが 『www.site.com『を』site.com」からのリダイレクトを必要とせずに、同じようにうまくいく』。

0

そこに行く貨物カルト事のビットがあるかもしれません。

私が働いているところでは、サーバーの技術者から、絶対URLがの場合、は遅延が発生すると言われていました。絶対URLはスイッチに戻って4台のサーバーの1台に中継されますが、

あなたの職場で真実であるかどうかは、あなたの職場にあるかどうかは、あなたが知ることができるかどうかです。

しかし、彼がなぜそれを言っているのか説明できないなら、そうでないことが証明されるまでそれは民俗信念です。

関連する問題