مرکز آموزش تهران هاست

حرفه ای تر شوید

قبل از قرار دادن دستورات باید بدانید فایل htaccess چیست و چه کارهایی انجام می دهد برای آموزش درباره htaccess میتوانید از لینک زیر استفاده نمایید

htaccessچیست

معرفی چند دستور htaccess

در صورتی که می خواهید امنیت سایت شما بیشتر شود با قرار دادن یک فایل اچ تی اکسس در فولدر خاصی میتوانید دسترسی را در فولدر مورد نظر قطع کنید برخی از این دستورها در زیر آمده

معرفی چند دستور htaccess

تغییر نام فایل htaccess :

با استفاده از کد زیر می توانید نام فایل را تغییر دهید 

 

AccessFileName htacc.ess
—————————————————

تغییر نام و پسوند فایل index : شما با قرار دادن و تغییر نام فایل خود می توانید نام و پسوند فایل ایندکس را با استفاده از Htaccess تغییر دهید index.htm , index.php , index.html , index.asp

DirectoryIndex test.html
تغییر پیدا می کند test.html  با قراردادن کد بالا فایل ایندکس شما به
—————————————————
: www باز شدن سایت با
 
را به صورت خودکار به مرورگر اضافه میکند   wwwباز کنید کد زیر  wwwبا قراردادن کد زیر میتوانید سایت خود را بدون وارد کردن
RewriteEngine on RewriteCond %{HTTP_HOST} !^www\.site\.com [NC] RewriteRule ^(.*)$ http://www.site.com/$1 [R=301,L]

نام دامنه خود را وارد کنیدsiteبجای کلمه

—————————————————

 

جلوگیری از سرقت پهنای باند و فایلها و عکسها
با قراردادن کد زیر دیگران قادر به قرار دادن مطلب شما در سایت خود نمی شوند و می توانید دسترسی فایلها و عکسها رامحدود کنید

RewriteEngine On RewriteBase / RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER}!^http://(www\.)site.com/.*$ [NC]

RewriteRule \.(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]

نام دامنه خود را قرار دهید site قرار دهید و بجای  …mpg,rar,zipبجای فرمت های قرار داده شده می توانید فرمتهای دیگری مانند

—————————————————

:http به  https (SSL)ریدایرکت کردن

در سایت خود استفاده می کنید و می خواهید تمام آدرسهای شما امن شود از کد زیر استفاده کنید sslدر صورتی که از گواهی

RewriteCond %{HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

:با استفاده از پورت سرور
RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

—————————————————

  :مسدود کردن آی پی

برای مسدود کردن یک یا چند آی پی خاص از کد زیر استفاده کنید و بجای آی پی های قرار داده شده آی پی هایی که می خواهید دسترسی به سایت شما نداشته باشند را را وارد کنید

order allow,deny
deny from 192.168.222.6
deny from 224.8.110.12
deny from 172.16.6.90
allow from all

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

order allow,deny
deny from 192.168.
deny from 10.0.0.
allow from all

—————————————————

:ساختن پیغام های برای خطاهای سفارشی

پیغام مناسب با خطا را وارد کنید errorبا دستور زیر می توانید با ایجاد فایل خطا ها در پوشه با نام

ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php

:چند خطای اپاچی برای نمونه
خطای 401: دسترسی به آدرس وارد شده غیر مجاز است
خطای 403: دسترسی به این آدرس ممنوع می باشد
خطای 404: آدرس مورد نظر یافت نشد
خطای 500: خطای داخلی سرور بوجود آمده است

—————————————————

قرار دادن رمز برای فایل ها
:نکات
باید اسم سایت خودتون رو بنویسید site در تمامی کد های بالا به جای
دقت کنید دستورات در فایل اچ تی اکسس به حروف بزرگ و کوچک حساسند

13 دیدگاه

  1. Mohammad

    سلام ، ممنون بابت آموزش خوبتون

    چطوری میشه کاری کرد که برای تمام فولدر ها index گذاشت ؟

    Options All -Indexes

    با کد بالا میشه ولی من میخوام یه index رو که خودم مشخص میکنم نمایش بده

    یه چیزی مثل ارور های وب سرور (404 , 403 ….. )

    ErrorDocument 401 /error/401.php

    ممنون میشم راهنمایی کنید

    • admin

      با سلام
      در صورتی که هاست خود را از تهران هاست خریداری کرده اید یک درخواست پشتیبانی ارسال کنید و در غیر اینصورت از پشتیبانی هاست خود مورد را پیگیری نمایید.

  2. سجاد

    با سلام ، چطور میشه فقط بخشی از سایت رو با https باز کرد
    مثلا می خوام بخش لوگین وردپرس با https باز بشه
    کدی که دادید رو چطور ویرایش کنم

    • admin

      شما می توانید در داخل پوشه ی مورد نظر (مثلا wp-admin) از دستور مربوط به ریداریکت در فایل اچ تی اکسز استفاده کنید. توجه داشته باشید که باید از داخل پوشه یک فایل اچ تی اکسز جداگانه بسازید و از دستوری مانند دستور زیر استفاده کنید
      RewriteEngine On
      RewriteCond %{SERVER_PORT} 80
      RewriteRule ^(.*)$ https://doman.com/wp-admin/ [R,L]

  3. امیدبرتر

    ممنونم.خیلی به دردم خورد
    فقط حواستون باشه آی پی خودتون رو بلاک نکنید 🙂

    • محمد جواد مافی

      توجه داشته باشید که بخش مدیریت بلاک نخواهد شد و اگر این اتفاق افتاد می توان مجددا با ویرایش فایل اچ تی اکز آی پی خود را باز کنید.

  4. inw

    سلام ، ممنون از شما بایت آموزشتون
    روی سایت ssl نصب کردم و می خواهم نماد قرار بدم که باید در صفحه ای بدون https قرار بگیره واسه همین میخواستم کد همه لینک ها از http به https تبدیل بشه غیر از یک آدرس خاص که در public_html قرار گرفته
    ممنون میشم کمکم کنید

    • محمد جواد مافی

      معمولا با توجه به اینکه هاست شما چه نوع پنی باشد در فایل منجر یک پوشه ی مخصوص برای https وجود دارد شما باید در پوشه ی مخصوص http در htaccess کد ریداریکت به https را قرار دهید (توجه داشته باشید که کد را نمی توانید پوشه ی مربوط به https قرار دهید زیرا سایت دچار یک حلقه ی بی نهایت که موجب بروز خطا می شود خواهد شد)

  5. رضا

    سلام. ممنون بابت مطلب مفیدتون؛ چند وقته همش کامنت اسپم چینی رو سایت میاد. از کد دستوری مسدود سازی رنج آی پی استفاده کردم ببینیم چی میشه!

  6. امیر

    خیلی ممنون تهران هاست

  7. ناصر علی محمدی

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

    • محمد جواد مافی

      این امکانات جزء امکانات آپاچی است که معمولا بر روی سرورهای لینوکس نصب است و از آنجا که معمولا وردپرس روی سرورهای لینوکس با وبسرور آپاچی یا سایر وب سرورهایی که از htaccess پشتیبانی می کنند نصب می شود می توان گفت که این امکانات برای وردپرس قابل استفاده هستند.

  8. رام

    مطلب خوبی بود خیلی بدرد من خورد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.