سلام دوستان عزیز. احتمالا همه شما با فایل 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 وردپرس به پایان رسید. امیدوارم که این مقاله بتونه کمکتون کرده باشه
موفق باشید
الناز جان
ممنون از شما که بدون چشم داشت اطلاعاتت را در اختیار بقیه قرار می دهید
ترفندهای جالبی را عنوان کردید
میشه یه توضیح کوچیک در مورد این فایل htaccess بدهید؟
سلام عماد جان.
با استفاده از اچ تی اکسس می توانید پسوند فایلها را تغییر داده و یا صفحه ای را به صفحه دیگر انتقال دهید و می توانید ارورهای مانند ۴۰۴,۴۰۰,۴۰۱,۵۰۰,۴۰۳ را نمایش دهید و آنها را مدیریت کنید حتی میتوانید با فایل htaccess. برروی یک فایل پسورد قراردهید و یا آی پی های خاصی را مسدود کنید در مواقعی ممکن است بعضی از دستورات در این فایل باعث غیر فعال کردن کل سایت شود که این امر مربوط به غیر فعال بودن بعضی توابع در فایل httpd.conf سرور می باشد و شما باید دستورات مشابه آن راقرار داده تا توابع بدرستی کار کنند و یا بعضی از توابع را حذف کنید
توضیحات بیشتر در اینجا گفته شده
سلام خسته نباشید
مممنونم از آموزش خوبتون
سلام. من اون مورد “محافظت با رمزعبور پنل مدیریت” رو اصلا نفهمیدم چیه؟ چیه؟ همین بخش لاگین ادمین سایت رو میگید؟ از اون عکسی هم که به نظر میرسه یک کد جاواسکریپت alert اومده بالا و داره یوزر پسورد رو میگیره!
در مورد “غیرفعال کردن اجرای PHP در برخی مسیرهای وردپرس” حالا امتحان نکردم ببینم این حرفی که میزنم کار میکنه یا نه! ولی فکر که کردم دیدم نمیشه که جلوی اجرای php رو توی پوشه wp-content/ گرفت؟ نه؟ ( نه توی پوشه wp-content/uploads که شما گفتید) چون پوشه قالب سایت هم توی همین پوشه هستش و قالب وردپرس با پی اچ پی درست شده (requie کردن توسط php قسمت های html مثل هدر و…) و با جلوگیری از اجرای php در کل این پوشه عملا همه چیز به هم میریزه، نه؟
سلام بهنام جان. در واقع با اون alert می تونید ۲ تا رمز عبور تا رسیدن به پیشخوان داشته باشید. ۱ بار برای رفتن به صفحه ورود و ۱ بار برای رفتن به پیشخوان. در نتیجه احتمال نفوذ کمتره
در خصوص اجرای php هم تا اونجایی که من می دونم این اتفاق نمی افته اما باز هم امتحان کردن ضرر نداره
موفق باشید دوست من
سلام خسته نباشید مفید بود خانم مهندس بیک زاده خوشحال میشم به ما هم سر بزنید در حال تدریس دوره جدیدی از وردپرس هستم
http://www.amoozesh98.com
با تشکر
ارادتمند : فلاح نیت
باتشکر مطلب مفیدی بود …
آموزش خیلی خوبی بود،ممنون
بسیار عالی بود، ممنون.
آقا خیلی عالی بود…خسته نباشید..فک کنم دیگه کاملتر از این نشه…
اعتراف میکنم من خیلی از چیزایی که تو وردپرس و طراحی قالبش یاد گرفتم مدیون شما هستم..
آقا خیلی خوب بود . موفق باشید.
عالی بود.با تشکر از شما و سایت خوبتون.
ممنون مفید بود
با سلام
برای بستن دایرکتوری بروزینگ
بنده کد را در درون فایل htaccess قرار دادم ولی حالا بار اول که مسیر دایرکتوری های قالب را لود میکنم فایل های آن دایرکتوری همگی لیست می شوند و با ری فرش کردن صفحه این بار دسترسی بسته میشود! یعنی عملا این کار بی فایده است.
بنظرتون دلیل این که همون بار اول دسترسی رو نمی بنده چیست؟
کانال تلگرام
عضویت در کانال
سایر مقالات
ورود به مدرسه وردپرس
عضویت در مدرسه وردپرس