#تنظیمات .htaccess برای گرفتن username & password
می خواهیم برای آدرس http:\\myDomain\upload یوزرنیم set کنیم
دایرکتری set شده برای Domain
/var/www/upload
این مراحل رو باید به ترتیب طی کنی
1- تنظیمات apache
باید کد زیر را به httpd.conf اضافه کنی می تونی در مسیر /etc/apache2 پیداش کنی
# nano etc/apache2/httpd.conf
اینو اضافه کن
<Directory "/var/www/upload">
AllowOverride AuthConfig
Options Indexes FollowSymLinks Includes
Order allow,deny
Allow from all
</Directory>
توجه کن که در
Directory بالا حتما مسیر دایرکتری که می خوای پسورد بزاری رو به جای
/var/www/upload قرار بدی.
-
##---> حالا باید apache را ریست کنی
/etc/init.d/apache2 restart
اگه به ارروری خوردی باید رفعش کنی. باید بری به log ها ببینی چیه- آخر آموزش آدرس log ها رو دادم
2- باید یک فایل به این اسم بسازی- فایل مخفی هست و برای دیدنس از ls -la استفاده بکن
nano .htaccess
3-حالا نوشته زیر رو داخل بزار
AuthUserFile /var/www/upload/.htpasswd
AuthName "Rezamosh"
AuthType Basic
require valid-user
توجه بکن که مسیر /var/www/upload/.htpasswd همون مسیری باشه که تو روی دایرکتریت می خواهی پسورد set کنی
AuthName Rezamosh
به جاش هر چی دوس داری بزار
حالاااااااااااااااا ذخیرش کن :ی - توجه کن که اسمشو حتما درست ذخیره کرده باشی
4- حالا باید فایل .htaccess رو براش گروه و کاربر تعریف کنی
دستورش زیر هست
chown www-data:www-data .htaccess
توجه کن ببین کاربر apache چی هستش معمولا www-data یا "nobody" یا "apache" یا "www" هست
مال من همون www-data بود.
از توی passwd میتونی ببینی کدوم هست!
با دستور cat /etc/passwd
حالا اگه ls -la بگیری اینو میبینی
5- حالا chmood
chmod 644 .htaccess
6- حالا باید پسورد و یوزرنیم set کنی
- پسورد رو دوبار می پرسه وارد می کنی!
htpasswd -c /var/www/upload/.htpasswd username
تموم حالا http:\\myDomain\upload را می زنیم ازمون پسورد و یوزر می خواد
-اگه به مشکلی خوردی می تونی از log های زیر هم استفاده کنی
tail -f /var/log/apache2/access.log
tail -f /var/log/apache2/error.log
می تونی برای کمک بیشتر به سایت های زیر هم بری
http://www.linuxhelp.net/guides/htaccess/
http://www.cyberciti.biz/faq/howto-setup-apache-password-protect-directory-with-htaccess-file/