Pertama perbedaannya.
mod_authn_dbd menyediakan front-end autentikasi seperti mod_auth_digest dan mod_auth_basic untuk mengautentikasi pengguna dengan mencari pengguna di tabel SQL.
mod_auth_mysql adalah modul Apache yang memungkinkan otentikasi menggunakan data pengguna dan grup yang disimpan dalam database MySQL. Proyek ini tampaknya tidak diperbarui sejak 2005, jadi saya akan menggunakan mod_authn_dbd .
Untuk mengatur ini dengan benar, pertama Anda perlu mengkonfigurasi mod_authn_dbd dan mod_dbd dengan benar dalam konfigurasi apache Anda, mod_dbd menangani koneksi database Anda. Setelah Anda selesai melakukannya (pastikan Apache Anda berjalan dengan modul-modul tersebut aktif), maka Anda dapat melanjutkan mengonfigurasinya.
Tambahkan sesuatu seperti ini ke konfigurasi Apache Anda untuk mengonfigurasi koneksi database:
<IfModule mod_dbd.c>
DBDriver mysql
DBDParams "host=(your_db_server, p.e. 127.0.0.1) dbname=your_db_name user=your_db_user pass=your_db_pass"
DBDMin 1
DBDKeep 8
DBDMax 20
DBDExptime 200
</IfModule>
Sekarang tambahkan konfigurasi otentikasi yang Anda inginkan ke dalam konfigurasi apache:
<Directory "/your/svn/repository/path/">
Options FollowSymLinks Indexes MultiViews
AuthType Basic
AuthName "Allowed users Only"
AuthBasicProvider dbd
AuthDBDUserPWQuery "SELECT pwd FROM tbl_users, tbl_user_group WHERE tbl_users.user_id=%s AND tbl_user.user_id=tbl_user_group.user_id"
Require valid-user
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Saya telah menyederhanakan pernyataan SELECT untuk keterbacaan yang lebih baik, Anda harus memperluas ini untuk menyempurnakan konfigurasi Anda.
EDIT:
Setelah mengetik, saya menemukan contoh yang sangat bagus di web, mungkin membacanya di sini , juga. Ini jauh lebih dalam daripada jawaban saya yang disederhanakan.