![ディレクトリをパスワード保護するために .htaccess を追加した後、PHP スクリプトが失敗する](https://rvso.com/image/652669/%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%82%92%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89%E4%BF%9D%E8%AD%B7%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AB%20.htaccess%20%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%97%E3%81%9F%E5%BE%8C%E3%80%81PHP%20%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%E3%81%8C%E5%A4%B1%E6%95%97%E3%81%99%E3%82%8B.png)
追加した 。htaccessそして.htpasswdパスワード保護するためにディレクトリに追加します。その部分は機能します。
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /path/.htpasswd
Require valid-user
しかし、現在、このディレクトリ内の PHP スクリプトは実行に失敗します。
error.log には次のように表示されます:
failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required
問題となっているスクリプトの行は次のようになります。
$data = file("http://site/script1.php");
$data2 = file("http://site/script2.php");
$data3 = file("http://site/script3.php");
このディレクトリで PHP を実行できるようにするには、.htaccess ファイルに何かを追加する必要がありますか?
編集:
はは...まあ、私は問題を回避しました。ディレクトリ全体ではなく、問題の PHP スクリプトをパスワードで保護しただけです。
<Files "script.php">
require valid-user
</Files>
答え1
PHP スクリプトが HTTP リクエストを介してサイトからいくつかのページを取得しようとすると、これが発生します。
スクリプトを変更して、リクエストに HTTP 認証情報を追加するか、これらの HTTP リクエストを実行しないようにする必要があります。