کد مسدودسازی دسترسی به فایلهای پنهان و حساس داتفایل (.git, .env)
این دستور تمام درخواستها به فایلها یا پوشههایی که با یک نقطه (.) شروع میشوند به جز دایرکتوری .well-known (برای صدور گواهینامه SSL) را به خطای 403 میفرستد.
مشخصات فنی و شناسنامه کد (Code Information)
بازبینی: 1405/06/29<IfModule mod_rewrite.c>
RewriteEngine On
# مسدودسازی دسترسی به تمام داتفایلها به جز پوشه احراز هویت SSL
RewriteRule (^\.|/\.) - [F]
RewriteRule ^\.well-known/ - [L]
</IfModule>
کد را کجا قرار دهیم؟ (Placement Guide)
در ابتدای فایل .htaccess بعد از RewriteEngine On قرار دهید.
این کد چگونه کار میکند؟ (How it Works)
دستور (^\.|/\.) هر درخواستی که شامل نقطه در ابتدا یا بعد از اسلش باشد را با پرچم [F] معادل 403 Forbidden ریجکت میکند.
چه زمانی از این کد استفاده کنیم؟ (Use Cases)
هنگام استفاده از Git برای دیپلوی یا استفاده از فایلهای .env در کنار وردپرس.
چه زمانی نباید از این کد استفاده کنیم؟ (Anti-patterns)
در صورتی که سرویسی نیاز به خواندن داتفایل خاصی خارج از .well-known داشته باشد.
پیشنیازهای اجرا
mod_rewrite آپاچی.
نحوه تست و اطمینان از عملکرد
درخواست به example.com/.env یا example.com/.git/config خطای ۴۰۳ میدهد.
نحوه بازگردانی سریع (Rollback)
حذف خطوط مربوطه از .htaccess.
خطاهای رایج و راهحل رفع
بستن دایرکتوری .well-known که باعث عدم تمدید گواهینامه رایگان Let's Encrypt میشود (که در کد بالا استثنا شده است).
ملاحظات و نکات امنیتی
یکی از شایعترین باگهای نشت اطلاعات در پروژههای وب، در دسترس بودن پوشه .git و دانلود کل دیتابیس است.
تاثیر بر سرعت و پرفورمنس
فوقالعاده سبک و کممصرف.