WIn32 下Apache多使用者的實現

2021-08-30 19:06:43 字數 2560 閱讀 7205

如下例:

authtype basic

authname "sagitar web admin"

authuserfile "c:\program files\apache group\apache2\conf\htpasswd"

satisfy all

require user abcuser

可以在httpd.conf中新增認證的路徑,也可以在被認證的目錄下新增.htaccess檔案。具體的做法如下。

方法一:以單使用者方式實現某目錄只能由某個使用者或幾個使用者訪問。

假設apache的web根目錄為 d:/home,對應url為 http://localhost/

如欲使d:/home/test目錄只能由某使用者訪問,該目錄對應url為http://localhost/test,訪問該url時需要彈出驗證對話方塊。

d:/users目錄用來存放密碼檔案 user.passwd

1、製作使用者密碼檔案

在命令列方式先用apache自帶的工具htpasswd.exe生成乙個密碼檔案叫user.passwd,-c引數表示新建檔案,無引數表示在該口令檔案中以新增方式增加乙個使用者。

d:\apache\bin>htpasswd -bc d:/users/user.passwd user1 123456

這樣,就生成了d:/users/user.passwd 口令檔案,裡面有一行文字 user1:$apr1$4s3.....$.su.8airdeymx7jkv2rt9/

成功增加了乙個user1的使用者,如果想再新增其他使用者,就採用追加方式新增使用者:

d:\apache\bin>htpasswd -b d:/users/user.passwd user2 123456

d:\apache\bin>htpasswd -b d:/users/user.passwd user3 123456

好了,當新增完使用者,就可以著手實現使用者驗證了。

2、製作訪問驗證檔案 .htaccess

開啟記事本,輸入以下文字:

authtype basic

authname "www.home.net"

authuserfile d:/users/users.passwd

require user user1

然後另存為 .htaccess,儲存路徑為你想實現驗證的目錄:d:/home/test/下,注意儲存型別選"所有檔案",檔名為".htaccess",否則就不會生成 .htaccess 檔案了。

到這裡,指定某個使用者驗證的設定就完成了,在瀏覽器中輸入驗證目錄所對應的位址 http://localhost/test/,會發現瀏覽器彈出乙個對話方塊要求你輸入使用者名稱和口令,你就只能輸入使用者user1和密碼12345才能進去,輸入其他使用者如user2,user3是沒用的。

3、實現指定某幾個使用者對乙個目錄的驗證

require user user1

改為:require user user1 user3

如此就實現了 http://localhost/test/ 只能由user1和user2訪問

4、實現所有合法使用者對乙個目錄的驗證

例如決定 http://localhost/test/ 能由 d:/users/user.passwd 檔案裡的所有使用者訪問,則編輯 d:/home/test/.htaccess 檔案,把最後的一句改為 :

require valid-user

就可以實現在 user.passwd 裡使用者都能訪問http://localhost/test/了,只要輸入的使用者名稱和密碼沒有錯誤。

方法二:採用群組使用者方式實現驗證

要實現其實也很簡單,在方法一中對 user.passwd 檔案裡的使用者進行分組,建立使用者組檔案,再在 .htaccess 檔案裡指定 authgroupfile 就可以了。假設 user.passwd 中已經新增了很多使用者 (user1,user2,user3,user4,...)

1、建立乙個使用者組檔案 d:/users/user.group ,內容如下:

manager:user1 user3

game:user2 user4

download:user5 user6 user7

如此,user.group 檔案裡把 user1至user7這7個使用者分為了3個組:manager,game,download 。

2、實現某組使用者能訪問 http://localhost/test/

authtype basic

authname "www.home.net"

authuserfile d:/users/users.passwd

authgroupfile d:/users/user.group

require group game

那麼,http://localhost/test/就只能由 game組裡的使用者 user2,user4 才能訪問了。

以上步驟,對於熟悉程式設計開發的同志來說,完全可以做個圖形介面程式來完成,就省事多了。

至此,apache在win32環境下的簡單驗證就實現了。看來和 linux下的設定方法差不多,我卻走了不少彎路才摸索出來,慚愧慚愧啊。

實現apache的驗證方法還有數種途徑,以上只是一方面而已。

apache新增多使用者

在apache的配置檔案httpd.conf裡啟用多站點功能 把上面這個 去掉 來到主配置檔案httpd.conf,找到 user daemon group daemon 這代表這是apache 啟動時使用的預設使用者,所以我們建立 資料夾一定要用 這個使用者或你可以換成你喜歡的普通使用者 如果你正...

win2008 多使用者遠端登入

在使用windows 2008遠端登入功能時,如果需要進行多使用者登入,可以採用以下配置方法 首先要啟用遠端桌面這一功能 右擊 我的電腦 屬性 遠端配置 遠端桌面,就可以配置相應的遠端桌面功能了。下面是配置多使用者登陸的方法 開啟 控制面板 管理工具 終端服務 terminal services 終...

配置apache和mysql到多使用者狀態

需要在伺服器上架設多個 其中乙個是本team的wiki。下面是硬碟分割槽情況 team1 mounted by dev sdc1 team2 mounted by dev sdd1 team3 mounted by dev sde1 team4 mounted by dev sdf1 directo...