شنبه 6 خرداد 1402
تیتر اخبار :
  • Ad

htaccess چیست؟

ارسال شده در 26 مهر 1393 | دسته‌بندی: اخبار ، عمومی

.htaccess یک فایل پیکربندی برای استفاده در وب سرور آپاچی می باشد. این فایل می‌تواند برای تغییر پیکربندی نرم‌افزار Apache Web Server برای فعال یا غیر فعال کردن قابلیت‌ها و ویژگی‌های اضافی که Apache Web Server ارائه شده استفاده شود. این فایل تقریبا تمامی محدودیت های اعمالی بردایرکتوری اصلی وب سایت شما را بر عهده دارد و می‌تواند پیغام های خطا را مدیریت کند.(ایران سرور)

با .htaccess قلب وب‏‌سایت خود را تحت کنترل بگیرید

اگر از وب‌‏سرور آپاچی برای وب‏سایت خود استفاده می‏‌کنید، با یادگیری قابلیت‏‌های مهم فایل .htaccess، می‏‌توانید کنترل کامل وب‏سایت خود را برعهده بگیرید.

فایل .htaccess یک فایل ساده اسکی (ASCII) می‌‏باشد که می‌‏توانید آن را به وسیله نرم‌‏افزارهای متنی ساده نظیر Notepad و یا SimpleText به وجود آورید. دقت داشته باشید که این فایل دارای هیچ نامی نمی‌‏باشد و فقط دارای پسوند است که پسوند آن، htaccess  است. برای درست کردن این فایل می‏‌توانید فایل متنی خود را که مثلا به صورت test.txt می‏‌باشد، تغییر نام داده و آن را به صورت .htaccess درآورید.

تذکر: اگر از ویندوز استفاده می‌‏کنید و هنگام تغییر نام دادن فایل به .htaccess، پیغام خطایی مبنی بر اینکه «می‌‏بایست برای فایل خود نامی را اختیار کنید» دریافت می‌‏کنید، فایل را بر روی سرور آپلود کرده و سپس در سرور آن را تغییر نام دهید. این کار به وسیله نرم‌‏افزارهای اف‌‏تی‌‏پی نظیر CuteFTP یا AbsoluteFTP بسیار ساده می‌‏باشد.

در هنگام استفاده از فایل .htaccess، دانستن سه نکته از اهمیت بالایی برخوردار است:

نکته اول: فایل .htaccess را می‌‏بایست به صورت ASCII آپلود کرده و مجوز دسترسی به آن را بر روی 644 (یا rw-r–r–) تنظیم نمایید.

نکته دوم: فایل .htaccess را می‌‏توانید به پوشه‌‏های مختلفی اعمال نمایید. به عنوان مثال اگر آن را بر روی root آپلود نمایید، تنظیمات آن به کل وب‌‏سایت اعمال خواهد شد و اگر آن را درون پوشه‌‏ای نظیر images/ آپلود نمایید، تنظیمات آن به پوشه images و زیرپوشه‌‏های آن اعمال خواهد شد.

نکته سوم: هر htaccess را می‌‏بایست درون یک خط تایپ نمایید. یعنی در انتهای هر دستور، می‌‏بایست یک‏بار کلید Enter را فشار دهید.

جلوگیری از لیست شدن محتویات یک پوشه با کمک htaccess

فرض کنید پوشه‌‏ای از تصاویر دارید و نمی‌‏خواهید که افراد غریبه، محتویات این پوشه را دیده و آن‏ها را تماشا کنند. برای این کار، سه راه وجود دارد:

1- ساخت یک صفحه index و قرار دادن آن در پوشه مورد نظر

2- استفاده از فایل .htaccess

3- استفاده از فایل‌های HEADER و README

از آنجا که بحث ما در مورد فایل .htaccess می‏‌باشد، راه دوم را مورد بررسی قرار می‏‌دهیم. برای این کار می‌‏بایست از فرمان IndexIgnore استفاده نمایید:

IndexIgnore *

این کد از لیست ‏شدن تمامی فایل‌‏های پوشه مورد نظر، جلوگیری می‌‏کند. حال فرض کنید که درون پوشه‌‏ای انواع ‏واقسام فایل‏ها نظیر فایل‏های اچ‌‏تی‌‏ام‌‏ال و تصاویر دارید و می‌‏خواهید که فقط از لیست شدن تصاویر جلوگیری شود. بدین‏‌ منظور می‏‌توانید از کد زیر استفاده کنید:

IndexIgnore *.gif *.jpg

در واقع این کد از لیست ‏شدن تمامی فایل‏ ‌هایی که به .gif و .jpg ختم می‌‏شوند، جلوگیری می‏‌کند.

حال فرض کنید که سرور شما، به طور پیش‌‏فرض، از لیست‏ شدن پوشه‏‌ها جلوگیری کرده است و شما می‌‏خواهید آن را تغییر دهید. برای این کار می‌‏توانید از دستور زیر استفاده کنید:

Options +Indexes

عوض کردن صفحه پیش‌‏فرض وب‏‌سایت با کمک htaccess

به طور کلی، تمامی وب‌‏سرورها از روی قانون خاصی صفحات وب را نشان می‌‏دهند. برای آنکه صفحات وب تنها به یک پسوند منحصربه ‏فرد نظیر .htm ختم نمی‌‏شوند و انواع‏ و‏اقسام پسوند‏های مختلف، برای صفحات وب وجود دارد.

حال فرض کنید که وب‌‏سرور شما، ابتدا فایل index.html را نشان می‏‌دهد و در صورت نبود آن، فایل‌‏های index.htm، index.php و … شما می‏‌خواهید این روند را تغییر داده و فایل index.php را در اولویت قرار دهید. بدین منظور می‌‏بایست از دستور DirectoryIndex استفاده نمایید:

DirectoryIndex index.php index.cgi index.pl default.htm

کد بالا ابتدا به دنبال فایل index.php گشته و در صورت پیدا کردن آن، آن را به عنوان صفحه وب پیش‌‏فرض نمایش می‌‏دهد. اگر فایل index.php پیدا نشد، سرور به دنبال فایل بعدی که index.cgi می‏‌باشد گشته و همین روال، ادامه پیدا می‌‏کند. دقت داشته باشید که شما حتما مجبور به استفاده از index برای نام فایل نیستید و از هر اسم دیگری نیز، می‏‌توانید استفاده کنید.

کاربرد فایل htaccess در Redirect

شاید تا به حال برایتان اتفاق افتاده باشد که به وب‌‏سایتی مراجعه کرده باشید و سپس متوجه شوید که آدرس وب‏سایت به طور اتوماتیک عوض شده و در واقع شما به آدرس دیگری ارجاع داده‏‌شده‏‌اید. برای این‏کار می‌‏توانید از دستور Redirect استفاده نمایید:

Redirect /olddirectory/oldfile.html http://yoursite.com/newdirectory/newfile.html

هچنین می‏‌توانید یک پوشه را به پوشه دیگر ارجاع دهید:

Redirect /olddirectory http://yoursite.com/newdirectory/Hot Linkin

در جامعه وب‌مسترها، عبارت Hot Linkin یک عبارت نفرت‌‏برانگیز است که از آن به عنوان «نقره‌‏داغ وب‌مسترها» نیز یاد می‏شود. اما معنای آن چیست؟

فرض کنید دارای یک سایت عکاسی هستید که روزانه تعداد زیادی عکس در زمینه‌‏های مختلف را در آن آپلود می‏‌کنید و در اختیار عموم قرار می‌‏دهید. حال فرد دیگری از عکس‌‏های شما در وب‏سایت خود استفاده می‌‏کند. این کار نه تنها برای شما هیچ سودی نخواهد داشت، بلکه از پهنای باند شما (BW) خواهد کاست و در نتیجه به زحمت و هزینه خواهید افتاد.

همچنین شما نمی‌‏توانید بفهمید که چه وب‏سایت‏هایی از عکس‏های شما استفاده کرده‏اند تا به آن‏ها اخطار دهید.

برای جلوگیری از چنین عملی، می‏توانید Hot Linkin را به وسیله mod_rewrite غیر فعال کنید:

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain.com/.*$ [NC]

RewriteRule \.(gif|jpg)$ – [F]

یادتان نرود که mydomain.com را به آدرس وب‌‏سایت خود تغییر دهید. همچنین می‌‏توانید کاری کنید در صورت استفاده از عکس‌‏های سایت شما، به جای نمایش آن‏ها، عکس مورد نظر شما نشان داده شود. مثلا اگر سایت A از عکس‏های سایت شما استفاده کرد، عکسی را نمایش دهید که تبلیغ سایت شما باشد. برای این‏کار می‏‌توانید از کد زیر استفاده کنید:

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain.com/.*$ [NC]

RewriteRule \.(gif|jpg)$ http://www.mydomain.com/nasty.gif [R,L]

آدرس عکس خود را در خط آخر کد تغییر دهید.

تذکر: mod_rewrite یکی از قابلیت‌‏های مفید آپاچی می‌‏باشد که توضیح  آن، احتیاج به یک مقاله‌ای مجزا دارد.

کاربرد فایل htaccess  در صفحات خطا

به احتمال زیاد با خطای معروف 404 در اینترنت سروکار داشته‌‏اید. این خطا در صورتی ظاهر می‌‏شود که صفحه مورد نظر شما (به هر دلیل)، در دسترس نباشد. یعنی در واقع صفحه‌‏ای وجود نداشته باشد و شما آن را از مرورگر بخواهید.

وب‏سایت‌‏های حرفه‌‏ای و آن‏هایی که خواهان جذب مخاطب برای وب‏سایت‌‏هایشان هستند، این صفحات خطا را (که هر فرد با دیدن آن‏ها سریعا دکمه close را می‏‌زند) سفارشی می‏‌کنند. یعنی به جای آن خطای 404 تکراری، یک صفحه خطای مناسب (در فرمت وب‌‏سایت) می‏‌گذارند و به مخاطب راهنمایی‏‌هایی می‏‌دهند.

معمولا در این نوع صفحات خطا، بیوگرافی کوچکی از وب‏سایت و زمینه کاری آن نوشته شده و سپس مخاطب را (به وسیله لینک و یا اتوماتیک) به صفحه اصلی وب‏سایت ارجاع می‌‏دهند.

برای ساخت صفحات خطا (که تعداد آنها کم هم نیست)، و ارجاع مخاطبین درصورت برخورد به صفحات خطای مختلف به آن‏ها، می‏‌توانید از کد زیر استفاده کنید:

ErrorDocument code /directory/filename.ext

به عنوان مثال کد زیر، مخاطب را در صورت مواجه شدن با خطای 404، به صفحه notfound.html ارجاع می‌دهد:

ErrorDocument 404 /notfound.html

منبع: iranmodern

برچسب ها : htaccess , redirect , آپاچی
بازدیدها : 1913

نظرات شما

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

This blog is kept spam free by WP-SpamFree.

فروش ویژه

آخرین مقالات

  • Ad