بهینه سازی وردپرس با کدهای کاربردی htaccess

اخبار

4 دقیقه زمان مطالعه

فایل htaccess در وردپرس که با اسم distributed configuration files شناخته می شود، عملیات مربوط به سرور و زیر شاخه ها را تنظیم می کند. برای مثال شما می توانید از این طریق با محدود کردن دسترسی بعضی از فایل ها، امنیت آنها را بالا ببرید.

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

 

جلوگیری از دسترسی به فایل های هاست

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

Options All -Indexes

معرفی زبان پیشفرض

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

# pass the default character set
AddDefaultCharset utf-8

حفاظت از فایل .htaccess

برای ایجاد امنیت بیشتر و جلوگیری از دسترسی دیگران به اطلاعات فایل htaccess ، باید کد زیر را در ابتدای فایل htaccess کپی نمایید.

<files ".htaccess">
order allow,deny
deny from all
</files>

ایجاد صفحات سفارشی برای صفحات خطا

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

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

توضیحات خطاها

ارور ۴۰۱ : دسترسی غیرمجاز به آدرس مورد نظر
ارور ۴۰۳: دسترسی ممنوع به آدرس مورد نظر
ارور ۴۰۴: آدرس مورد نظر یافت نشد
ارور ۵۰۰: ایجاد خطای داخلی سرور

پاک کردن category از آدرس سایت وردپرس

می توانید در آدرس سایت نام category را حذف کنید. با انجام این کار  url سایت کوتاه تر می شود.

RewriteRule ^category/(.+)$  [R=301,L]

محدود کردن اسپمرها با .htaccess

با استفاده از قطعه کد زیر از ارسال دیدگاه های اسپم به وب سایت خود جلوگیری کنید. از این طریق بعضی از IP ها را مسدود کرده و در فایل htaccess قرار دهید.

<Limit GET POST>
order allow,deny
deny from 200.49.176.139
allow from all
</Limit>

دستور allow from all یعنی همه IP ها به ان هایی که محدود شده اند اجازه دسترسی دارند

دستور deny from 200.49.176.139 به آی پی دیگری اجازه دسترسی می دهید و هر تعداد آی پی دیگری هم خواستید وارد خواهید کرد.

 

جلوگیری از ارسال نظرات اسپم

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

RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*yourblog.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]

تغییر عنوان و پسوند فایل پیش‌فرض index هنگام آپلود

هنگام فراخوانی یک آدرس باید یکی از فایل های index.html یا index.php و یا نمونه های دیگری از این فایل باگذاری شوند ولی اگر شما بخواهید فایل های دیگری انجام شود. در این موقع هنگام فراخوانی یک آدرس به دنبال file.php یا اگر این فایل موجود نبود به دنبال فایل file.html خواهد گشت.

DirectoryIndex file.php file.html

پنهان کردن فرمت و معرفی فرمت‌های جدید

یکی از راه های افزایش امنیت و حفاظت از اسکریپت های PHP این است که انها با فرمت PHP باز نشوند و دارای فرمت دیگری مثل ASP باشند.

AddType application/x-httpd-php .asp .jsp

قفل کردن دامنه سایت با www یا بدون www

ایم شی.ه برای سو. خوب نیست پس جز در موارد بخصوص از آن استفاده نکنید. وبات های گوگل اینطور تصور می کنند که مطالب یکسانی از دو دامنه متفاوت منتشر می شود.s قرار دهید:

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

 

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

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

افزایش امنیت فایل wp-config.php در htaccess

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

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

ایجاد محدودیت برای فایل های قابل اجرا و نمایش

برای ایجاد امنیت و حفاظت از اطلاعات، پسوند فایل هایی را که می توان باز کرد تعیین کنید. این قطعه کد به کاربران تنها اجازه باز کردن فایل هایی با پسوند css , js و php را داده است.

Options +FollowSymlinks
RewriteEngine On
rewritecond %{REQUEST_FILENAME} !^(.+).css$
rewritecond %{REQUEST_FILENAME} !^(.+).js$
rewritecond %{REQUEST_FILENAME} !file.php$
RewriteRule ^(.+)$ /deny/ [nc]

جلوگیری از سرقت پهنای باند، فایل‌ها و عکس‌ها

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

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?site.com/ .*$ [NC]
RewriteRule \.(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]

نویسنده علیرضا ناجی

سایر مقالات نویسنده

0

دیدگاه ها

ارسال دیدگاه

ارسال دیدگاه