2016-03-18 14 views
0

私は2つのURL:mywebsite.example.comまたはexample.com/mywebsiteでアクセスできるWebサーバー上にWebサイトを開発しています。たとえば、mywebsite.example.com/images/abc.jpgexample.com/mywebsite/images/abc.jpgにアクセスすると、同じ画像が表示されます。ウェブサイトがルートフォルダにない場合は、絶対URLまたは相対URL?

問題は、私のウェブサイト内に多数のリンクがあり、絶対パスまたは相対パスを使用する必要があるかどうかわかりません。

別の質問 Absolute vs relative URLs から私は、(/images/abc.jpgのような)ルートからの相対URLを使用して示唆誰かを見つけた私はexample.com/mywebsiteを使用してWebサイトにアクセスしたときただし、すべてのリンクはただ壊します。

相対パスの場合、ウェブページは異なるフォルダにあるが、いくつかのリンクを含む同じテンプレートを使用しているため、管理が難しかった。つまり、手動でいくつかのリンクを../と設定し、一部を./と設定する必要があります。

また、<base>というタグを使ってみましたが、アンカーで壊れてしまいました。 #シンボルの前に絶対パスを含める場合でも、#の後には、その部分を直接抽出するのではなく、属性hrefの値を直接取得するため、一部のjQueryライブラリは正しく機能しません。

もっと良いプラクティスや提案はありますか?どうもありがとうございました。

+0

私は1つのURLを選び、それに固執することをお勧めします。 [Redirect](https://moz.com/learn/seo/redirection)他のURLを選択し、リンクや画像の相対パスを使用します。 [正規化](https://moz.com/learn/seo/canonicalization)を参照してください。 – showdev

+0

残念ながら私はリダイレクトすることができません。私はサーバーの所有者ではなく、その許可を得ていません。私がURLの1つにこだわることができるなら、私はすでにそうしていたでしょう。 – user3545752

答えて

0

相対URLを使用して、相対URLをテンプレートで使用する方法に絞って、最終ページと比較して解決する必要があると思います。

私はあなたがテンプレートに使用している技術を知らないが、私は2つの一般的な解決策を参照してください。

  • テンプレートに「相対パス」変数を​​宣言した後、別のページでそれを上書きし、新しい相対パスでこの相対パスをすべてのURLのプレフィックスとして使用してください。
  • 最終ページを知るサービスにデリゲートURLを作成します。何かのようにresolveUrl(..)
関連する問題