اگر از وب سرور Apache استفاده می کنید.شاید برای محافظت از پوشه ها بر روی آنها پسورد بگذارید.برای اینکار روش های مختلفی وجود دارد که در این مطلب قصد داریم تا با استفاده از htaccess. بر روی پوشه های سایت پسورد تعیین کنیم.گفتنی است این مطلب بر روی سرورهایی که از فدورا,RHEL و CentOS و توزیع هایی از این خانواده نصب شده باشد کاربرد دارد و با کمی تغییر امکان انجام آن بر روی سایر توزیع ها امکان پذیر می باشد.
برای شروع کار ابتدا فایل تنظیمات آپاچی را باز کنید :
#vi /etc/httpd/conf/httpd.conf
اکنون دنبال قسمتی که با این عبارت شروع می شود جستجو کنید :
<Directory “/var/www/html”>
اکنون این خط را :
AllowOverride none
با این خط جایگزین کنید :
AllowOverride AuthConfig
اکنون فایل را ذخیره کنید و سپس سرویس httpd را یکبار restart کنید :
#systemctl restart httpd
اکنون جهت ساخت نام کاربری و پسورد کافیست تا این دستور را اجرا کنید :
#htpasswd -c /etc/httpd/.htpasswd hos7ein
همانطور که در دستور بالا مشاهده می کنید کاربری با نام hos7ein ایجاد خواهد شد و پس از اجرای دستور از ما پسوردی برای این کاربر دریافت می کند.
نکته اینکه اگر دستور htpasswd وجود نداشت بسته ی httpd-tools را نصب کنید که اگر از فدورا استفاده می کنید این دستور را اجرا کنید :
#dnf install httpd-tools
اگر از CentOS استفاده می کنید این دستور را اجرا کنید :
#yum install httpd-tools
نکته ی دیگری که باید به آن توجه کرد این است که اگر قصد دارید یک کاربر دیگر ایجاد کنید دیگر از سوئیچ c- استفاده نکنید.
اکنون این دستورها را اجرا کنید :
#chown apache:apache /etc/httpd/.htpasswd
#chmod 0660 /etc/httpd/.htpasswd
اکنون داخل پوشه ی مورد نظر خود فایل زیر را ایجاد کنید :
#vi /var/www/html/.htaccess
سپس این حطوط را درون فایل قرار دهید :
AuthType Basic
AuthName “Restricted Content”
AuthUserFile /etc/httpd/.htpasswd
Require user hos7ein
از این پس هنگام ورود از طریق مرورگر وب به آدرس پوشه ای که فایل htaccess.را برای آن ایجاد کردید باید نام کاربری و پسورد تعیین شده را وارد کنید.