dポイントプレゼントキャンペーン実施中!

ホームページを作っていて、Basic認証を付けているのですが、401エラーページがうまく、表示させられません。

非認証でアクセスし、キャンセルした場合、401.html が表示されるのですが、CSSが反映しないでページが崩れています。
画像も表示されていません。

認証された状態で url/401.html にアクセスすると、正常に表示されます。

CSSや画像ファイルなどはすべて絶対パスで入力しています。

私なりに調べたところ、CSSが崩れた状態のページのソースから、CSSファイルや画像にアクセスすると、そこでも401が返されるので、それらのファイルが拒否されているのだと思います。

401.html のヘッダーに直接CSSを書き込んで、非認証でアクセス→キャンセルした場合、CSSは正常に表示されました。

他にもサイトを作っていて、そこではBasic認証を使っていてもちゃんとCSSは機能しています。

恥ずかしながら、今回作っているサイトと何が違うのか、サーバーにあるファイルを調べてもわかりませんでした。

html に直接CSSを書き込むのは、今後のCSSの修正時に手間がかかるので、できれば一つのCSSで管理したいです。

Basic認証を全体にかけているサイトで、401が返された時、CSSや画像のファイルを有効にする方法はあるのでしょうか?

よろしくお願いします。

A 回答 (1件)

まさかCSSや画像ファイルは認証対象になっていませんよね?

    • good
    • 0
この回答へのお礼

申し訳ありません。

サイト全体が認証対象なので、CSSや画像も認証されてました。
・・・当然、拒否されますよね。

他サイト(サブドメイン)で、同じように全体にBasic認証をかけているのに、ちゃんと表示されているので、出来るものだと思ってたのですが、よくよく調べてみると、他サイトでは親ドメインからCSSの設定を引っ張ってました。

認証は全体にかけてますが、.htaccessを使って、テンプレートフォルダをディレクトリごと認証対象から外すことで、ちゃんと表示されるようになりました。

ありがとうございました。

お礼日時:2014/07/14 21:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!