Apache2+SVN+MYSQL認證 配置項詳細步驟
2024-08-27 18:30:07
供稿:網友
######## 本配置放在 httpd.conf 或其他 .conf 文件中都可以
######## APACHE2 支持多種認證/驗證方式,本文只涉及 MYSQL 認證/驗證方式
#/svn 即在 瀏覽器或SVN客戶端中訪問的 版本庫的地址,如:
<Location /svn>
DAV svn
#/var/svn/test 即服務器上的版本庫位置
SVNPath /var/svn/test
#版本庫說明,在通過版本庫地址訪問版本庫時認證窗口所出現的“title”
AuthName "Subversion Repository"
#此項目前只能是 Basic,不支持其他參數值
AuthType Basic
#如果使用 MYSQL 進行認證,則此處必須為 /dev/null,否則會報:(9)Bad file descriptor: Could not open password file: (null)
AuthUserFile /dev/null
#關閉基本認證,經測試,此項似乎可省略,建議保留
AuthBasicAuthoritative off
#打開 MYSQL 認證
AuthMYSQL on
#只用 MYSQL 進行認證,也即只要 MYSQL 認證通過了,就認為具有訪問權限,若設為 off,則如果還有其他認證方式,會繼續進行其他認證( 類似 AND 邏輯 )
AuthMySQL_Authoritative on
###### MYSQL 認證所用的 MYSQL 數據庫訪問相關配置項 ######
#MYSQL數據庫 所在IP
AuthMySQL_Host 127.0.0.1
#MYSQL數據庫 訪問端口,可省略,默認3306
#Auth_MySQL_Port
#MYSQL數據庫 訪問用戶名
AuthMySQL_User user_name
#MYSQL數據庫 訪問密碼
AuthMySQL_Password password
###### MYSQL 認證所用的 具體數據相關配置項 ######
#存放認證信息的數據庫名稱
AuthMySQL_DB svn_auth_db
#存放認證信息的表名稱
AuthMySQL_Password_Table users_test
#存放認證用戶名的字段名稱
AuthMySQL_Username_Field user
#存放認證密碼的字段名稱
AuthMySQL_Password_Field pass
#密碼加密方式,有如下選項: Plaintext:明文;Crypt_DES:DES對稱加密;Crypt_MD5:Crypt_MD5加密;Crypt:Unix crypt()加密;PHP_MD5:PHP_MD5加密;SHA1Sum:sha1加密;MySQL:MySQL PASSWORD()函數加密; PHP_MD5 與 Crypt_MD5 的區別未作考證
AuthMySQL_Encryption_Types SHA1Sum
#是否允許空密碼訪問,也即只輸入用戶名訪問
AuthMySQL_Empty_Passwords off
#有三個可用值:user, group, valid-user,一般只用 valid-user
Require valid-user
</Location>