場所を指定しているのに、なぜ私のCPリンクが予期せず、.../optimized/.../themes/というディレクトリに移動していますか。
環境:
カスタマーポータル(CP)
解決策:
CPのリンクが下記のように解決される場合があります:
https://site.custhelp.com/euf/rightnow/optimized/1414097899/themes/standard/app/some/page
しかし、エンドユーザは下記のようなページに移動されるはずです:
https://site.custhelp.com/app/some/page
.../optimized/.../themes/... というパスが使用されている原因は、絶対パスのかわりに、リンクが相対パスを使用していることです。ページのソースコードを見ますと、下記のようなリンクがあります:
href="app/some/page"
ページのソースコードの中に、相対パスを絶対パスに変更することで問題が解消されます。上記の例の場合、ソースコードの中に、変更後のhrefリンクが下記のようです:
href="https://site.custhelp.com/app/some/page"
原因:
CPの場合、ページの<head>タグ以内に、下記のタグが表示されます:
<base href='http://site.custhelp.com/euf/rightnow/optimized/1416115321/themes/standard/'></base>
これにより、すべての相対リンクのためにベースURLが設定されます。任意のリンクがベースhrefの値に従います。
これは、あなたが開発/ステージング/プロダクションでページを表示するときに、ページ上のすべてのcss及びそのほかのアセットが正しい環境から読み込まれる方法となります。