آموزش htaccess.

htaccess.اچ تی اکسز که مخفف کلمه هایپرتکست اکسز ( Hypertext Access = htaccess ) می باشد ، یک فایل مهم برای مدیران وب سایت ها محسوب می شود، چراکه به کمک این فایل ساده می توانند تنظیمات کاربردی وب سایت خود را بر روی وب سرور مورد استفاده اعمال نمایند.

برای مثال به کمک اچ تی اکسسز می توان بسادگی آدرس دهی ( URL ) بخش های مختلف وب سایت را به صورت کاربر پسند ( user friendly ) و مناسب برای موتور های جستجو ( SEO ) اصلاح نمود و یا برای امنیت بیشتر، لایه امنیتی و کلمه عبور را برای ورود به یک پوشه در نظر گرفت و یا عملیات ریدایرکت را به کمک آن صورت داد. به همین ترتیب، نرم افزارهای مدیریت محتوای ( cms ) رایج مانند وردپرس ( wordpress ) عموما به همراه فایل htaccess. پیشفرض خود عرضه و نصب می شوند که تنظیمات اختصاصی اسکریپت مربوطه را در داخل خود دارا می باشد.

آیا تا به حال محتوای این فایل را در اسکریپت خود بررسی کرده اید؟ مقاله پیش رو ، شما را تا حدی با محتوای این فایل و همچنین چند مثال کاربردی آشنا خواهد کرد. البته در اعمال تغییرات در این فایل باید نهایت دقت را داشته باشید ، چراکه یک تغییر ساده می تواند عملکرد سایت شما را با اشکالاتی همراه سازد. برای درک بهتر عملکرد این فایل، در ابتدا به معرفی اجمالی وب سرور محبوب آپاچه ( apache ) می پردازیم.

زمانی که سیستم عامل گنو-لینوکس ( GNU/Linux ) در حال پوست انداختن و رشد در حوزه سیستم عامل های سمت سرور بود ، به ابزاری قدرتمند نیاز داشت تا کار را یکسره کند و گوی رقابت را در حوزه سرویس های وب نیز برباید. در این هنگام بود که وب سرور محبوب Apache ( آپاچه ) متولد شد و شهرت و قدرت لینوکس را به اوج برد و به برگ بنده ای بی بدیل برای لینوکس تبدیل گشت.

آموزش ویرایش فایل htaccess.

هم اکنون پس از گذشت قریب به 22 سال از تولد این وب سرور ، طبق آخرین آمار سایت نیکس کرفت ( Nixcraft ) بالغ بر 45 درصد از سایت های اینترنتی از این وب سرور استفاده می کنند. حتی بدون اغراق می توان گفت آپاچه نقش کلیدی در توسعه وب جهانی نیز داشته و دارد.

هسته آپاچه به زبان سی ( C ) نوشته شده است و به راحتی بر روی هر توزیع لینوکسی قابل نصب است. تنها با صرف کمتر از 10 دقیقه می توانید بدون هیچ کنترل پنلی اولین پیغام ! It Works را بر روی آی پی سرور خود مشاهده فرمایید.

کارکرد وب سرور آپاچه به واسطه رول  ( Rule ) هایی است که در تنظیمات ( httpd.conf ) آن قرار دارد. این تنظیمات در حالت کلی توسط شرکت های هاستینگ و یا مدیر سرور پیکره بندی می شوند. ولی ممکن است هر کاربر به مقتضای طراحی اسکریپت خود نیاز به اعمال تغییراتی در کارکرد وب سرور داشته باشد که به دلایل مختلف امکان اعمال آنها بر بستر اشتراکی سرور هاست نباشد.

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

طیفی از شخصی سازی هایی شامل عدم دسترسی به یک مسیر خاص ، محدودیت بر روی آی پی برخی کشور ها ، انواع ریدایرکت ها ، تغییرات در مکانیزم کش محتوا و موارد دیگری از این دست همگی به کمک htaccess. پوشش داده می شود.

البته باید در نظر داشت با توجه به اینکه کل فایل htaccess. در هر درخواست مرورگر یکبار بررسی می شود ، زیاد بودن حجم رول های آن منجر به بروز کندی در نمایش سایت خواهد شد. در ادامه شما را با چند مثال پر کاربرد در این خصوص آشنا می کنیم:

در نظر داشته باشید در مثال های زیر بایستی بجای example.com نام دامنه خود را وارد فرمایید.

ریدایرکت کردن کل ترافیک سرور بر روی https:

RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]

با قرار دادن این کد ها کل ترافیک هاست به https://www.example.com ریدایرکت می شود.

ریدایرکت کردن فقط یک دامنه از سرور بر بستر https :

RewriteEngine On RewriteCond %{HTTP_HOST} ^example\.com [NC] RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]

قرار دادن فقط یک پوشه از سایت بر بستر https :

RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteCond %{REQUEST_URI} folder RewriteRule ^(.*)$ https://www.example.com/folder/$1 [R,L]

در این مثال بایستی folder را با نام پوشه مورد نظر جایگزین فرمایید.

ریدایرکت کردن سایت بدون www به وضعیت با www :

RewriteEngine On RewriteCond %{HTTP_HOST} ^ example.com [NC] RewriteRule ^(.*)$ http://www. example.com /$1 [L,R=301]

ریدایرکت کردن سایت از حالت با www به حالت بدون www :

RewriteEngine On RewriteCond %{HTTP_HOST} !^example\.com$ [NC] RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

البته اگر بخواهیم این تغییر را به تفکیک http و https صورت دهیم کد ها به این ترتیب خواهد بود:

RewriteCond %{HTTPS} off RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

RewriteCond %{HTTPS} on RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

ریدارکت کردن document root از public_html  به یک پوشه دیگر:

بوسیله ریدایرکت:

RewriteEngine on RewriteRule   "^/$"  "/folder/"  [R]

بوسیله RedirectMatch :

RedirectMatch "^/$" "http://example.com/folder/"

در این مثال پوشه folder داخل public_html بعنوان document root قرار داده شده است.

مسدود کردن دسترسی یک آی پی به سایت 

order allow,deny deny from 1.2.3.4 allow from all

در این مثال همه به سایت دسترسی خواهند داشت بجز ای پی 1.2.3.4

مسدود کردن دسترسی همه بجز یک آی پی به سایت:

order allow,deny allow from 1.2.3.4 deny from all

در کد های فوق بجز آی پی 1.2.3.4 هیچ کس امکان دسترسی به سایت را ندارد. این کد مثلا برای پوشه های حساس سایت مناسب است. مانند پوشه های مدیریتی که فقط مدیر سایت با در اختیار داشتن یک آی پی ثابت و شخصی بتواند به آن بخش متصل شود.

ریدایرکت سایت بر روی یک نشانی دیگر:

RewriteEngine on RewriteCond %{HTTP_HOST} ^example.com [NC,OR] RewriteCond %{HTTP_HOST} ^www.example.com [NC] RewriteRule ^(.*)$ http://example.net/$1 [L,R=301,NC]

در این مثال دامنه قدیمی example.com به دامنه جدید example.net ریدایرکت می شود.

ریدایرکت یک فایل مشخص بر روی فایل دیگر:

Redirect 301 /oldfile.htm /newfile.htm

مخفی سازی پسوند فایل :

RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php

با قرار دادن این کد ها پسوند .php در انتها فایل ها نمایش داده نمی شود.

  • با خدمات ابری پارس آشنا شوید

    اولین ارائه‌دهنده خدمات رایانش ابری در ایران هستیم

    سرور ابری

    سرور ابری

    چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد

    سرور هیبردی

    سرور هیبردی

    چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد

    سرور ماکرو

    سرور ماکرو

    چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد

    میزبانی ابری

    میزبانی ابری

    چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد

    هاست دانلود

    هاست دانلود

    چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد

    مطالعه این مطالب نیز پیشنهاد می‌شود

    مقالات و نظرات اعضای تیم ما درباره تکنولوژی، روزهای کاری و چیزای دیگر…

    آموزش ابزار Hosts File Editor

    یکی از چالش های رایج بین مدیران سایت و وب مستر ها ، به حداقل رساندن Down Time در زمان جابجایی هاست بین دو سرور میزبانی و یا استفاده از خدمات CDN ) Con...

  • کلیه حقوق برای شرکت دانش بنیان پارس پک محفوظ می باشد.

    Copyright © 2019 Pars Parva System Ltd. ParsPack Cloud Computing Technology ® , All Rights Reserved.