質問
-
フリー PHP+MySQL
パスワード制限と画像表示 -
本文:
・フリー PHP+MySQLプランにてWordpressを利用しています
・サーバーのルートディレクトリの一つ下に「top」という名前のフォルダを作成し、そこにワードプレスをインストールしました
スターサーバーのサーバー管理ツールからパスワード制限を利用し、topフォルダにパスワード制限をかけたのですが、ブラウザから閲覧するとサイト内の画像が表示されません。
・パスワード制限を利用していない場合にはサイト内の全ての画像が表示されます
・確認に使ったブラウザはchrome・safari・firefox・operaです
・管理ツールから作成されたhtaccessファイルの記載は
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /top/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /top/index.php [L]
</IfModule>
# END WordPress
#####basicauth#####
AuthUserFile "/home/サーバーID/サイトURL/htpasswd/top/.htpasswd"
AuthName "Member Site"
AuthType BASIC
require valid-user
#####end:basicauth#####
となっています。
ワードプレスの投稿フォームから投稿したアイキャッチ画像は表示されるのですが、
ワードプレス内で作成したポートフォリオの画像が表示されません。
ブラウザでは画像の表示先URLは
/top/portfolio/画像のファイル名
となっています。
表示したい画像がアップロードされている
/top/wp-content/uploads/年/月
の場所から閲覧時に呼び出すのがうまくいっていないのかな、と思うのですが、どこを確認したらよいかわかりません。
画像を表示させるにはどうしたらよいか、或いは問題がどのへんにあるのかについて知恵を貸していただけると幸いです。 - 緊急度:通常投稿者:はしばみさん投稿時間:2017/12/26 18:18
回答 No.6827
-
本文:
>ブラウザでは画像の表示先URLは
>/top/portfolio/画像のファイル名
表示されない時に、そのURLの場所に本当に画像が存在しますか?
存在しないのなら、画像生成時にBASIC認証のかかっている領域を読みに行って
失敗してるとかなのでは?
PHP(プラグイン?Wordpressの機能?テーマの機能?)とかでは、BASIC認証がかかっていることを前提として作成されてないのでは?
PHPで、
画像ファイルを、httpプロトコルで取得してるとかしてたら、BASIC認証の影響を受けますよね。
■
>表示したい画像がアップロードされている
>/top/wp-content/uploads/年/月
>の場所から閲覧時に呼び出すのがうまくいっていないのかな、と思うので
>すが、どこを確認したらよいかわかりません。
/top/wp-content/uploads/
この領域だけ、Basic認証を外して動作確認をすればはっきりするのでは?
- 投稿者:k-tanさん 投稿時間:2017/12/26 22:22
質問者からのコメント
回答ありがとうございます。
確かに、top/portfolioのところには画像がありませんでした。
アクセス権限を行わない通常の状態では、ワードプレス自体の機能で画像を呼び出して閲覧できるようになっているようです。
動作確認について、Basic認証がうまく動いていないようでフォルダやファイルを指定すると確認ができませんでした。
他の方の回答も参考に、そもそもBasic認証がちゃんと動く環境なのかどうか今一度調べてみようと思います。
回答 No.6833
-
本文:
>Basic認証がちゃんと動く環境
たぶん、どの環境でもBasic認証をかけると同じ結果になると思う。
- 投稿者:k-tanさん 投稿時間:2017/12/27 23:36
回答 No.6874
-
本文:
平素はネットオウルをご利用いただき誠にありがとうございます。
ネットオウル運営チームです。
本ご質問は一定期間新たな回答がなかったため
運営チームで締め切らせていただきました。
■質問の締め切りについて
Q&A掲示板はユーザー様同士の交流掲示板です。
回答がもらえた場合、回答者へお礼コメントをしましょう。
問題が解決した際にはベストアンサーを選び、
質問を締め切ってください。
■再度のご質問について
ご質問が未解決の場合、「ワンポイント!」を参考に、
再度質問してみてください。
【ワンポイント!】
メールやFTPの設定がうまくいかない場合、
ネットオウルIDやサーバーIDなどのお客様情報を公開しない範囲で、
現在の設定内容を出来るだけ詳しく書いてみましょう。
設定内容のミスを指摘してもらえるかもしれません。
エラーが出てうまくいかない場合、
エラーメッセージの内容を書いてみましょう。
エラーメッセージにはエラー原因が詳しく書かれていることが多く、
問題の解決につながる回答が得られるかもしれません。
■ベストアンサーについて
ご質問の締め切りに際して、運営チームにて
ベストアンサーを選んでおります。
※ベストアンサーの回答者様には通常と同様のポイントが
付与されています。
--ネットオウル運営チーム-- - 投稿者:ネットオウル運営 投稿時間:2018/01/18 15:45
回答 No.6826
この回答がベストアンサーです
ま、一般論ですが、無料の(あるいは、無料に近い)サーバーというのは、往々にして、キャッシュが効きすぎていることが多くて、そういうサーバーでは、Basic認証のような、「認証されたかどうかによって違う画面を表示しなければいけないのに、URLが同じ」というパターンのアクセスでは、不具合が発生することが多いです。
(旧wpblog(現フリーWP)では、Basic認証はまともには機能しなかったような気がします。)
一度、有料のサーバーで、まったく同じ構成のサイトを構築してみて、動作の違いを比べてみるのがいいのではないかと思います。
質問者からのコメント
回答ありがとうございます。
basic認証の動作はサーバーの環境にもよるのですね。
アドバイスいただいたように、有料版と比較してみようと思います。