![將 .htaccess 新增至密碼保護目錄後,PHP 腳本失敗](https://rvso.com/image/652669/%E5%B0%87%20.htaccess%20%E6%96%B0%E5%A2%9E%E8%87%B3%E5%AF%86%E7%A2%BC%E4%BF%9D%E8%AD%B7%E7%9B%AE%E9%8C%84%E5%BE%8C%EF%BC%8CPHP%20%E8%85%B3%E6%9C%AC%E5%A4%B1%E6%95%97.png)
我補充道。訪問和.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");
我是否需要在 .htaccess 檔案中添加一些內容才能允許 php 在此目錄中執行?
編輯:
哈...好吧,我解決了這個問題。我只是用密碼保護有問題的 php 腳本而不是整個目錄:
<Files "script.php">
require valid-user
</Files>
答案1
如果您的 PHP 腳本嘗試透過 HTTP 請求從您的網站取得某些頁面,就會發生這種情況。
您應該變更腳本,以便將 HTTP 驗證資訊新增至請求中,或不執行這些 HTTP 請求。