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

بسیار خب شروع می کنیم.

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

فایل htaccess وردپرس رو در حالت ادیت باز کنید. اگر فایل رو در روت هاستتون نمیبینید تیک hidden files رو بزنید و یا اگر فایل رو ندارید آن را بسازید با نام htaccess.

محافظت از بخش مدیریت وردپرس

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

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "WordPress Admin Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
# whitelist Syed's IP address
allow from xx.xx.xx.xxx
# whitelist David's IP address
allow from xx.xx.xx.xxx
# whitelist Amanda's IP address
allow from xx.xx.xx.xxx
# whitelist Muhammad's IP address
allow from xx.xx.xx.xxx
# whitelist Work IP address
allow from xx.xx.xx.xxx
</LIMIT>

آدرس آی پی های مورد نظرتونو جای  xx.xx.xx.xxx قرار دهید.

محافظت با رمزعبور پنل مدیریت

محافظت با رمزعبور پنل مدیریت

محافظت با رمزعبور پنل مدیریت

برای انجام این کار ابتدا باید فایل .htpasswds را در سایت online htpasswd generator بسازیم. بعد از ساخت به مسیر زیر بروید:

home/user/.htpasswds/public_html/wp-admin/passwd/

فایلی به نام .htpasswds بسازید و کدی که ساخته اید را داخل آن قرار دهید. سپس یک فایل .htaccess جدید هم بسازید و آن را باز کرده و کد زیر را به آن اضافه کنید:

AuthName "Admins Only"
AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd
AuthGroupFile /dev/null
AuthType basic
require user putyourusernamehere
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any 
</Files>

 نکته: فراموش نکنید که به جای نام مسیر AuthUserFile نام مسیر درست را قرار دهید ( مسیر درست جایی که فایل .htpasswds را ساختید )

غیرفعال کردن دسترسی به فایل های هاست

غیرفعال کردن دسترسی به فایل های هاست

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

برای غیر فعال کردن دسترسی به فایل های هاست کد زیر را در فایل htaccess وردپرس قرار دهید:

Options -Indexes

 

غیرفعال کردن اجرای PHP در برخی مسیرهای وردپرس

گاهی اوقات در سایت های وردپرسی که هک شده اند فایلی به نام backdoor وجود دارد. این فایل یا فایل ها معمولا در مسیر wp-includes و یا wp-content/uploads هستند. backdoor ها در واقع فایل هایی هستند که توسز هکران ایجاد می شوند و به معنای ” در پشتی” برای دسترسی به هاست شما ساخته می شوند. حالا یک راه ساده و مفید برای افزایش امنیت سایت وردپرسی در مقابل این فایل ها، غیرفعال کردن اجرای php در برخی مسیرهای وردپرس است.

یک فایل .taccess جدید ساخته و کد زیر را داخل آن قرار دهید

<Files *.php>
deny from all
</Files>

این فایل را در مسیر های /wp-content/uploads/ و/wp-includes/ آپلود کنید

 

امنیت فایل wp-config.php ( فایل پیکربندی وردپرس )

به جرات می توان گفت که مهم ترین فایل هاست که در روت قرار دارد و شامل اطلاعات پیکربندی و پایگاه داده سایت وردپرسی است، فایل wp-config.php می باشد. از این جهت امنیت این فایل خیلی مهم است. برای افزایش امنیت فایل wp-config.php کد زیر را به htaccess وردپرس اضافه کنید

<files wp-config.php>
order allow,deny
deny from all
</files>

 

ریدایرکت 301

استفاده از ریدایرکت 301 بهترین روش برای ریدایرکت کردن از نظر سئو است و برای این استفاده می شود که بخواهید از یک آدرس به آدرس دیگر ریدایرکت شوید. برای استفاده از این قابلیت کافیست کد زیر را در htaccess وردپرس قرار دهید:

Redirect 301 /oldurl/ http://www.example.com/newurl
Redirect 301 /category/television/ http://www.example.com/category/tv/

نکته: لینک های بالا نمونه هستند و شما باید لینک مورد نظرتون رو قرار بدید.

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

آیا IP Address های مشکوک و غیرمعمولی سایت شما را می بینند؟ برای مسدود کردن آنها کافیه که کد زیر را در htaccess وردپرس قرار دهید:

<Limit GET POST>
order allow,deny
deny from xxx.xxx.xx.x
allow from all
</Limit>

نکته: به جای عبارت xxx.xxx.xx.x آی پی آدرس مورد نظرتونو قرار بدید.

غیرفعال کردن hotlinking تصاویر

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

#disable hotlinking of images with forbidden or custom image option
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?wpschool.ir [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?http://wpschool.ir/feed [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L]

 

محافظت از htaccess در برابر دسترسی های غیرمجاز

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

کد زیر را داخل فایل htaccess وردپرس قرار دهید:

<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</files>

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

موفق باشید

14 دیدگاه برای “۹ ترفند مفید htaccess وردپرس

  • عماد
    - ۲۹ شهریور , ۱۳۹۳

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

    میشه یه توضیح کوچیک در مورد این فایل htaccess بدهید؟

    • الناز بیک زاده
      - ۲۹ شهریور , ۱۳۹۳

      سلام عماد جان.
      با استفاده از اچ تی اکسس می توانید پسوند فایلها را تغییر داده و یا صفحه ای را به صفحه دیگر انتقال دهید و می توانید ارورهای مانند ۴۰۴,۴۰۰,۴۰۱,۵۰۰,۴۰۳ را نمایش دهید و آنها را مدیریت کنید حتی میتوانید با فایل htaccess. برروی یک فایل پسورد قراردهید و یا آی پی های خاصی را مسدود کنید در مواقعی ممکن است بعضی از دستورات در این فایل باعث غیر فعال کردن کل سایت شود که این امر مربوط به غیر فعال بودن بعضی توابع در فایل httpd.conf سرور می باشد و شما باید دستورات مشابه آن راقرار داده تا توابع بدرستی کار کنند و یا بعضی از توابع را حذف کنید

      توضیحات بیشتر در اینجا گفته شده

  • رضا
    - ۲۹ شهریور , ۱۳۹۳

    سلام خسته نباشید

    مممنونم از آموزش خوبتون

  • behnam
    - ۲۹ شهریور , ۱۳۹۳

    سلام. من اون مورد “محافظت با رمزعبور پنل مدیریت” رو اصلا نفهمیدم چیه؟ چیه؟ همین بخش لاگین ادمین سایت رو میگید؟ از اون عکسی هم که به نظر میرسه یک کد جاواسکریپت alert اومده بالا و داره یوزر پسورد رو میگیره!

    در مورد “غیرفعال کردن اجرای PHP در برخی مسیرهای وردپرس” حالا امتحان نکردم ببینم این حرفی که میزنم کار میکنه یا نه! ولی فکر که کردم دیدم نمیشه که جلوی اجرای php رو توی پوشه wp-content/ گرفت؟ نه؟ ( نه توی پوشه wp-content/uploads که شما گفتید) چون پوشه قالب سایت هم توی همین پوشه هستش و قالب وردپرس با پی اچ پی درست شده (requie کردن توسط php قسمت های html مثل هدر و…) و با جلوگیری از اجرای php در کل این پوشه عملا همه چیز به هم میریزه، نه؟

    • الناز بیک زاده
      - ۲۹ شهریور , ۱۳۹۳

      سلام بهنام جان. در واقع با اون alert می تونید ۲ تا رمز عبور تا رسیدن به پیشخوان داشته باشید. ۱ بار برای رفتن به صفحه ورود و ۱ بار برای رفتن به پیشخوان. در نتیجه احتمال نفوذ کمتره

      در خصوص اجرای php هم تا اونجایی که من می دونم این اتفاق نمی افته اما باز هم امتحان کردن ضرر نداره
      موفق باشید دوست من

  • مسلم فلاح نیت
    - ۳۰ شهریور , ۱۳۹۳

    سلام خسته نباشید مفید بود خانم مهندس بیک زاده خوشحال میشم به ما هم سر بزنید در حال تدریس دوره جدیدی از وردپرس هستم
    http://www.amoozesh98.com
    با تشکر
    ارادتمند : فلاح نیت

  • اسد اسماعیلی
    - ۳۱ شهریور , ۱۳۹۳

    باتشکر مطلب مفیدی بود …

  • masoud
    - ۱۲ آبان , ۱۳۹۳

    آموزش خیلی خوبی بود،ممنون

  • bahrami
    - ۸ مرداد , ۱۳۹۴

    بسیار عالی بود، ممنون.

  • shandemanshop
    - ۲۶ شهریور , ۱۳۹۴

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

  • مهرداد
    - ۲۹ مهر , ۱۳۹۴

    آقا خیلی خوب بود . موفق باشید.

  • مهرداد
    - ۲۸ آذر , ۱۳۹۴

    عالی بود.با تشکر از شما و سایت خوبتون.

  • امیر
    - ۲۱ بهمن , ۱۳۹۴

    ممنون مفید بود

  • شاهو
    - ۲۵ شهریور , ۱۳۹۸

    با سلام
    برای بستن دایرکتوری بروزینگ
    بنده کد را در درون فایل htaccess قرار دادم ولی حالا بار اول که مسیر دایرکتوری های قالب را لود میکنم فایل های آن دایرکتوری همگی لیست می شوند و با ری فرش کردن صفحه این بار دسترسی بسته میشود! یعنی عملا این کار بی فایده است.
    بنظرتون دلیل این که همون بار اول دسترسی رو نمی بنده چیست؟

دیدگاه خود را بیان کنید

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

-- بارگیری کد امنیتی --