簡體   English   中英

PHP和htpasswd

[英]PHP and htpasswd

我有這樣的結構:

/home
/home/dir1
/home/dir2

現在,當有人去/ home時,要求他輸入用戶名和密碼(以一種形式),我用PHP為/ home的其余文件設置了會話信息。 現在,/ home / dir1和/ home / dir2受htpasswd保護,但用戶名和密碼相同。 我不希望用戶在進入/ home / dir1時再次輸入用戶名和密碼...同樣,當我從/ home注銷時,我也想從/ home / dir1注銷。 能否請您提供有關如何實現此目標的建議?

這應該是默認行為。

也就是說,如果使用Apache和.htaccess文件設置HTTP身份驗證,則應用於目錄的任何規則也將應用於其子目錄,瀏覽器會將其視為所有一次登錄。

如果您希望其行為有所不同,即,如果您希望將網站的某些部分視為需要完全獨立的登錄名,則可以使用.htaccess中的AuthName指令為每個部分指定一個“領域”。 更多信息在這里 但是,如果您不這樣做,它將始終被視為同一登錄名的所有部分。

關於HTTP身份驗證的事情是沒有辦法“注銷”,至少除非瀏覽器提供了該功能,否則就沒有辦法。 大多數瀏覽器允許您注銷的唯一方法是結束瀏覽器會話(即關閉瀏覽器)。 是的,一旦執行此操作,您將退出/ home,/ home / dir1,/ home / dir2以及所有站點/領域中的所有目錄。

在Apache中,只要兩個文件夾具有相同的AuthName並且在同一站點上,它們就應該共享一個密碼。

這兩個目錄可能都有一個.htaccess文件,如下所示:

AuthName "My Protect Folder"
AuthType basic
AuthUserFile /somewhere/htusers
require valid-user

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM