.htaccess 對子目錄沒有影響

.htaccess 對子目錄沒有影響

我需要用密碼保護我的整個網站(目前僅用於開發)。所以我創建了一個.htaccess和一個.htpassword文件。其中.htaccess包含

AuthUserFile /my/absolute/path/.htpassword
AuthName "Protected"
AuthType Basic
Require valid-user

我的目錄樹如下圖所示

/var/www
|--- file.php
|--- .htaccess
|--- dir
|   |--- text.html
|--- file2.php

如果我嘗試存取file.phpfile2.php(直接位於 中的任何文件/var/www),則該網頁受密碼保護。但是,我/dir/text.html無需任何身份驗證即可存取子目錄 ( ) 中的檔案。我絕對確定沒有.htaccessin /var/www/dir(我使用ls -A)。

我在網路上看到這.htaccess應該會對目錄和所有子資料夾產生影響,這就是我想要的。

您知道為什麼它對我的情況下子目錄中的文件沒有任何影響嗎?如果是這樣,我怎麼能讓它發揮作用?

答案1

如果您有靜態 IP,您只需在虛擬主機配置中只允許從一個 IP 存取網站:

<Directory /> Order Deny,Allow Deny from all Allow from 127.0.0.1 #your IP </Directory>

答案2

您可以在 php 中編寫自訂程式碼以進行會話登入並禁止標題上的其餘訪問

session_start();
if(isset($_SESSION['user']))
{echo "do the stuff";}
else
{header("location:login");}

相關內容