فایل .htaccess یک فایل پیکربندی قدرتمند است که به شما اجازه می دهد تا بسیاری از کارها را به صورت شسته و رفته در وب سایت خود انجام دهید. در این مقاله ما برخی از ترفندهای مفید برای .htaccess برای وردپرس که شما می توانید از آن استفاده کنید را شما نشان می دهیم.
فایل .htaccess چیست و نحوه ویرایش آن چگونه است؟
فایل .htaccess یک پرونده پیکربندی سرور است. این فایل به شما اجازه می دهد تا شما یک سری قوانین برای سرور خود تعریف کنید
فایل .htaccess در پوشه روت سایت وردپرسی شما قرار دارد. برای ویرایش آن باید با استفاده از یک سرویس گیرنده FTP به وب سایت خود متصل شوید.
اگر شما نمیتوانید فایل .htaccess خود را پیدا کنید، در مورد چگونگی پیدا کردن فایل .htaccess در وردپرس، راهنمای ما را ببینید.
قبل از ویرایش فایل .htaccess خود، مهم است که یک کپی از آن به عنوان پشتیبان تهیه کنید.
حفاظت از منطقه وردپرس با استفاده از فایل .htaccess
شما می توانید از .htaccess برای محافظت از منطقه مدیریت خود در وردپرس با محدود کردن دسترسی به آدرس های IP انتخاب شده استفاده کنید. به سادگی این کد را در فایل .htaccess کپی کنید و وارد کنید:
[php]</pre>
<div class="line number1 index0 alt2"><code class="php plain">AuthUserFile /dev/null</code></div>
<div class="line number2 index1 alt1"><code class="php plain">AuthGroupFile /dev/null</code></div>
<div class="line number3 index2 alt2"><code class="php plain">AuthName </code><code class="php string">"WordPress Admin Access Control"</code></div>
<div class="line number4 index3 alt1"><code class="php plain">AuthType Basic</code></div>
<div class="line number5 index4 alt2"><code class="php plain"><LIMIT GET></code></div>
<div class="line number6 index5 alt1"><code class="php plain">order deny,allow</code></div>
<div class="line number7 index6 alt2"><code class="php plain">deny from all</code></div>
<div class="line number8 index7 alt1"><code class="php plain"># whitelist Syed’s IP address</code></div>
<div class="line number9 index8 alt2"><code class="php plain">allow from xx.xx.xx.xxx</code></div>
<div class="line number10 index9 alt1"><code class="php plain"># whitelist David’s IP address</code></div>
<div class="line number11 index10 alt2"><code class="php plain">allow from xx.xx.xx.xxx</code></div>
<div class="line number12 index11 alt1"><code class="php plain"></LIMIT></code></div>
<div class="line number12 index11 alt1">[/php]
شما می توانید از فایل .htaccess برای اضافه کردن حفاظت از رمز عبور اضافی به منطقه مدیریت وردپرس خود استفاده کنید.
ابتدا باید یک فایل .htpasswds ایجاد کنید. شما با استفاده از این ژنراتور آنلاین می توانید به راحتی آن را ایجاد کنید.
این فایل .htpasswds را خارج از دایرکتوری وب قابل دسترسی عمومی یا / public_html / folder بارگذاری کنید.
/home/user/.htpasswds/public_html/wp-admin/passwd/
بعد، یک فایل .htaccess ایجاد کنید و آن را در پوشه / wp-admin / / آپلود کنید و سپس کدها زیر را اضافه کنید:
[php]</pre>
<div class="line number1 index0 alt2"><code class="php plain">AuthName </code><code class="php string">"Admins Only"</code></div>
<div class="line number2 index1 alt1"><code class="php plain">AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd</code></div>
<div class="line number3 index2 alt2"><code class="php plain">AuthGroupFile /dev/null</code></div>
<div class="line number4 index3 alt1"><code class="php plain">AuthType basic</code></div>
<div class="line number5 index4 alt2"><code class="php keyword">require</code> <code class="php plain">user putyourusernamehere</code></div>
<div class="line number6 index5 alt1"><code class="php plain"><Files admin-ajax.php></code></div>
<div class="line number7 index6 alt2"><code class="php plain">Order allow,deny</code></div>
<div class="line number8 index7 alt1"><code class="php plain">Allow from all</code></div>
<div class="line number9 index8 alt2"><code class="php plain">Satisfy any </code></div>
<div class="line number10 index9 alt1"><code class="php plain"></Files></code></div>
<div class="line number10 index9 alt1">[/php]
فعال سازی SSI :
اگر شما هم بنا به نیاز و سلیقه خود تمایل به فعال سازی SSI برای انواع فایل های HTML و SHTML دارید می توانید دستورات زیر را امتحان کنید :
[php]
&lt;div class="line number1 index0 alt2"&gt;&lt;code class="php plain"&gt;AddType text/html .html&lt;/code&gt;&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;&lt;code class="php plain"&gt;AddType text/html .shtml&lt;/code&gt;&lt;/div&gt;&lt;div class="line number3 index2 alt2"&gt;&lt;code class="php plain"&gt;AddHandler server-parsed .html&lt;/code&gt;&lt;/div&gt;&lt;div class="line number4 index3 alt1"&gt;&lt;code class="php plain"&gt;AddHandler server-parsed .shtml&lt;/code&gt;&lt;/div&gt;&lt;div class="line number5 index4 alt2"&gt;&lt;code class="php plain"&gt;AddHandler server-parsed .htm&lt;/code&gt;&lt;/div&gt;&lt;div class="line number5 index4 alt2"&gt;[/php]
تغییر هدرهای زبان و مجموعه کاراکتر :
آن دسته افرادی که تمایل به تغییر مجموعه کاراکتر فعلی و زبان مورد نظر برای یک دایرکتوری خاص را دارند می توانند از الگوهای زیر بهره ببرند :
[php]
&lt;div class="line number1 index0 alt2"&gt;&lt;code class="php plain"&gt;AddDefaultCharset UTF-8&lt;/code&gt;&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;&lt;code class="php plain"&gt;DefaultLanguage en-GB&lt;/code&gt;&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;[/php]
بلوکه کردن مراجعات ناخواسته :
اگر شما احیانا تمایل به بلوک کردن کاربرانی در رابطه با یک وبسایت مشخص و یا یک سری وبسایت ها داشتید می توانید از الگوی دستوری زیر استفاده کنید :
[php]
<div class="line number1 index0 alt2"><code class="php plain">&lt;IfModule mod_rewrite.c&gt;</code></div><div class="line number2 index1 alt1"><code class="php plain">RewriteEngine on</code></div><div class="line number3 index2 alt2"><code class="php plain">RewriteCond %{HTTP_REFERER} website1.com [NC,OR]</code></div><div class="line number4 index3 alt1"><code class="php plain">RewriteCond %{HTTP_REFERER} website2.com [NC,OR]</code></div><div class="line number5 index4 alt2"><code class="php plain">RewriteRule .* – [F]</code></div><div class="line number6 index5 alt1"><code class="php plain">&lt;/ifModule&gt;</code></div><div class="line number6 index5 alt1">[/php]
بلوک کردن ایجنت های کاربری ناخواسته :
با روش زیر شما می توانید از هدر رفتن بی رویه پهنای باند خود با بلوکه کردن بات ها و اسپایدرها، جلوگیری به عمل آورید :
[php]
</div><div><div class="line number1 index0 alt2"><code class="php plain">&lt;IfModule mod_rewrite.c&gt;</code></div><div class="line number2 index1 alt1"><code class="php plain">SetEnvIfNoCase ^User-Agent$ .*(bot1|bot2|bot3|bot4|bot5|bot6|) HTTP_SAFE_BADBOT</code></div><div class="line number3 index2 alt2"><code class="php plain">SetEnvIfNoCase ^User-Agent$ .*(bot1|bot2|bot3|bot4|bot5|bot6|) HTTP_SAFE_BADBOT</code></div><div class="line number4 index3 alt1"><code class="php plain">Deny from env=HTTP_SAFE_BADBOT</code></div><div class="line number5 index4 alt2"><code class="php plain">&lt;/ifModule&gt;</code></div><div class="line number5 index4 alt2">[/php]
جلوگیری از دسترسی به یک محدوده بزرگی از فایل ها :
اگر شما هم مثل برخی کاربران تمایل به محافظت از فایل های خاص خود و یا حتی بلوکه کردن دسترسی به فایل htaccess. را داشتید می توانید با سفارشی سازی الگوی دستوری زیر به این هدف برسید :
[php]
<div class="line number1 index0 alt2"><code class="php plain">&lt;Files privatefile.jpg&gt;</code></div><div class="line number2 index1 alt1"><code class="php plain">order allow,deny&lt;/span&gt;</code></div><div class="line number3 index2 alt2"><code class="php plain">deny from all&lt;/span&gt;</code></div><div class="line number4 index3 alt1"><code class="php plain">&lt;/Files&gt;</code></div><div class="line number5 index4 alt2"><code class="php plain">&lt;FilesMatch </code><code class="php string">".(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$"</code><code class="php plain">&gt;</code></div><div class="line number6 index5 alt1"><code class="php plain">Order Allow,Deny</code></div><div class="line number7 index6 alt2"><code class="php plain">Deny from all</code></div><div class="line number8 index7 alt1"><code class="php plain">&lt;/FilesMatch&gt;</code></div><div class="line number8 index7 alt1">[/php]
مجبور کردن به ذخیره فایل به صورت Save As :
اگر دوست دارید کاربران به جای دیدن فایل ها در مرورگر مجبور باشند آنها را روی کامپیوتر خود دانلود کنند می توانید از الگوی کد به صورت زیر استفاده کنید :
[php]
<div class="line number1 index0 alt2"><code class="php plain">AddType application/octet-stream .csv</code></div>
<div class="line number2 index1 alt1"><code class="php plain">AddType application/octet-stream .xls</code></div>
<div class="line number3 index2 alt2"><code class="php plain">AddType application/octet-stream .doc</code></div>
<div class="line number4 index3 alt1"><code class="php plain">AddType application/octet-stream .avi</code></div>
<div class="line number5 index4 alt2"><code class="php plain">AddType application/octet-stream .mpg</code></div>
<div class="line number6 index5 alt1"><code class="php plain">AddType application/octet-stream .mov</code></div>
<div class="line number7 index6 alt2"><code class="php plain">AddType application/octet-stream .pdf</code></div>
<div class="line number7 index6 alt2">[/php]