htaccess چیست؟
htaccess یک فایل پیکربندی برای استفاده در وب سرور می باشد. فایل htaccess. جهت ایجاد پیکربندی در دایرکتوری ها ویا پوشه ها متفاوت در نرم افزارهای ارائه شده تحت سرور آپاچی (the Apache Web Server) به کار می رود.
چرا باید از یک فایل .htaccess استفاده کنیم؟
سوال مهمی که باید کار را با پاسخ به آن شروع کنیم این است که: «فایل htaccess چیست؟» . یک فایل تنظیمات بسیار خاص است که توسط سرور وب Apache استفاده میشود. یک فایل .htaccess میتواند به وب سرور بگوید که انواع مختلف اطلاعات را چطور نمایش دهد و چگونه به سربرگهای متعدد درخواستهای HTTP رسیدگی کند.
در واقع وسیلهای برای تمرکززدایی است تا تنظیمات سرور وب را سازماندهی کند. ممکن است یک سرور فیزیکی بیش از ۵۰ وب سایت مختلف را که هر کدام فایل .htaccess خود را دارند در خود جای داده باشد. این قدرت فراوانی به وبمسترها میدهد که از راهی دیگر نمیتوانستند بدست آورند. اما چرا لازم است از این فایل استفاده کنیم؟
اصلیترین دلیل، امنیت است. میتوانید چند دایرکتوری خاص را از دسترسی خارج کنید یا برایشان رمز عبور بگذارید. این کار برای پروژههای خصوصی یا برای استفاده در سیستمهای مدیریت محتوای جدید که میخواهید امنیت بیشتری داشته باشید بسیار عالی است. اما دستورهای رایج مانند تغییر مسیر پیامهای خطای ۴۰۴ به یک صفحه وب خاص نیز وجود دارند. این امر تنها به اندازه یک خط کدنویسی فضا لازم دارد اما میتواند اثر بالایی روی بازخورد بازدیدکنندگان نسبت به صفحات گم شده داشته باشد.
چگونه کار می کند؟
فابل htaccess را در یک پوشه (یا فهرست) خاص قرار می دهند.
هنگامی که به این پوشه / فهرست راهنما از طریق یک مرورگر وب دسترسی پیدا کردید، فایل htaccess شناسایی و خوانده می شود تا محتویات آن را اجرا کند.
بنابراین اساساً فایل htaccess یک فایل تنظیمات است که برای گفتن دستوراتی خاص به وب سرور مربوط می شود و در وب سایتی که خدمات وب سرور در آن است، قابل استفاده است.
کاربرد های فایل htaccess
مسدودسازی IPهای خاص
یکی از ویژگی ها و کاربرد های مهم فایل Htaccess مسدود سازی و جلوگیری از دسترسی IP ها و رنج ایپی ها به بخش های مهم سایت از قبیل دایرکتوری ها و فایل ها میباشد. با مسدودسازی IP های خاص در واقع مجوز ورود و دسترسی به بخشهای مختلف وبسایت از آن IP ها سلب می شود که این عمل میتواند موجب کاهش اثر حملات DDOS، جلوگیری از دسترسی به وبسایت توسط IP کشورهای گوناگون و … میگردد. برای مسدود سازی Ip های خاص در فایل htacces لازم است مقاله ” چگونگی مسدود کردن IP در htaccess ” را مطالعه فرمایید.
جلوگیری از عمل Hotlink
این قابلیت مهم که با عنوان Hotlink Protection در منوی اصلی cPanel نیز قرار داشته و قابل فعالسازی میباشد، از کپی شدن اطلاعات شما در وبسایتهای دیگر جلوگیری مینمایید. به عنوان مثال با فعال سازی قابلیت Hotlink Protection چنانچه تصویری در یک دایرکتوری از سرویس میزبانی شما وجود دارد، از نمایش آن تصویر در وبسایتهای دیگر جلوگیری به عمل میآید و همچنین چنانچه فایلی قابلیت دانلود با لینک مستقیم با استفاده از وبسایت شما را دارد و لینک مذکور در وبسایتی دیگر کپی گردیده باشد، کاربران آن وبسایت با کلیک بر روی لینک مذکور ابتدا به آدرس وبسایت شما ارجاع داده میشوند. از این رو جهت استفاده از قابلیت Hotlink Protection لازم است ضمن مطالعه مقاله ” نحوه جلوگیری از عمل Hotlink در فایل .htaccess و cPanel ” موجود در سایت نسبت به فعال کردن این قابلیت اقدام فرمایید.
اعمال رمز عبور برای دایرکتوری (Password Protection)
همانگونه که در مقاله ” نحوه قراردادن رمز عبور بر روی دایرکتوری در سی پنل ” نیز شرح داده شده است، با اعمال چند خط کد ساده در فایل htaccess. میتوان دسترسی به دایرکتوریها را با تعریف نام کاربری و رمز عبور در فایلهای htpasswd. کنترل نمود. از این قابلیت بیشتر برای ایجاد زمر عبور بر روی مدیریت یک سیستم، به جهت جلوگیری از ورود ناخواسته افزار به صفحه مدیریت استفاده میشود.
ارجاع به وبسایتهای دیگر
از دیگر قابلیت ها و کاربرد های مهم فایل htaccess میتون به قابلیت ارجاع و یا ریدایرکت اشاره نمود. این قابلیت ما را مقدور میسازد تا بازدیدکنندگان صفحهای خاص و یا تمامی بخشهای وبسایت خود را به وبسایتی دیگر ارجاع دهیم. این عمل مزیتهای بسیاری از جمله ارجاع بازدیدکنندگان از وبسایت قدیمی به وبسایت جدید خود، تغییر ادرس وب سایت از HTTP به HTTPS، افزایش رتبه در SEO و … دارد.
کنترل نمایش لیست فایلهای درون یک دایرکتوری (Directory Browsing)
همواره پیشنهاد میگردد از امکان نمایش محتویات درون فایلها و دایرکتوریها جلوگیری به عمل آید زیرا در صورت عدم فعال بودن این قابلیت و وجود اطلاعات مهم در دایرکتوریهای مختلف، (برای مثال وجود فایلی فشرده با پسوند .zip حاوی فایلهای مهم در یک دایرکتوری)، امکان سرقت اطلاعات موجود در آن بدون خواست شما و اطلاع قبلی وجود دارد. همچنین از آن مهمتر در صورت قابلیت نمایش محتویات درون دایرکتوریها، امکان مشاهده و جستوجو جهت یافتن فایلهای آسیبپذیر توسط هکرها نیز فراهم خواهد شد.
علاوه بر موارد فوق امکان فعالسازی قابلیتهای بسیار دیگری از قبیل تغییر فایل Index پیشفرض وبسایت یا دایرکتوری، تغییر محتویات نمایشی صفحات مربوط به خطاهای ۴۰۴،۵۰۰،۴۰۳ و …، تنظیم ساعت بر اساس TimeZone های مختلف، جلوگیری از دسترسی به فایلهای مختلف نظیر php.ini، حصول اطمینان از دانلود فایلهای رسانهای به جای پخش آنها و … در فایل htaccess. مقدور میباشد.
.