فایل htaccess. نقش مهمی در پیکربندی سرور و رسیدگی به درخواست ها در وب سایت وردپرس ایفا می کند. مجموعه ای از عملکردهای سمت سرور مانند تغییر مسیر URL، امضای سرور، ذخیره فایل، حفاظت از رمز عبور و سفارشی سازی صفحات خطا را مدیریت می کند. در این مطلب به فایل htaccess. در وردپرس چیست؟ کاربردها و نحوه ویرایش آن میپردازیم.
درک عملکرد فایل htaccess. برای مدیریت رفتار وب سایت و افزایش عملکرد ضروری است.
در این راهنما، نحوه مکان یابی، تغییر و ایجاد فایل htaccess. پیش فرض در وردپرس را نشان خواهیم داد.
فایل htaccess چیست؟
فایل .htaccess، مخفف دسترسی فرامتن، یک فایل پیکربندی رایج است که در سرورهای وب، به ویژه در سرورهای آپاچی و وردپرس استفاده میشود.
این یک فایل متنی حاوی دستورالعمل های پیکربندی مختلف است که در دایرکتوری ریشه یک وب سایت قرار دارد. هنگام ویرایش و تغییر فایل htaccess.
معمولاً به منابع وب سایت اجازه داده یا محدود می شود. وجود یک نقطه پیشرو در نام فایل نشان دهنده پنهان بودن آن (یک dotfile) است. برای اینکه فایل قابل مشاهده و قابل ویرایش باشد، تنظیمات فایل منیجر پیش فرض را تنظیم کنید.
فایل htaccess برای چه مواردی استفاده می شود؟
وظیفه اصلی فایل htaccess در وردپرس مدیریت لینکهای دائمی برای یک سایت است. علاوه بر این، گزینه های پیکربندی مختلفی وجود دارد که می تواند عملکرد یک وب سایت را افزایش دهد.
برخی از کاربردها و مزایای htaccess در جدول لیست شده اند:
عملکرد | توضیحات |
---|---|
تغییر مسیر و بازنویسی URL ها | تغییر مسیر URL و بازنویسی، ناوبری وب سایت را تغییر می دهد و سئو را بهبود می بخشد. همچنین ایجاد URLهای وب سایت قابل خواندن و توصیفی را امکان پذیر می کند. |
جلوگیری از هات لینک شدن تصویر | ایمن سازی منابع وب سایت، دیگران را از پیوند دادن تصاویر یا سایر منابع میزبانی شده روی سرور باز می دارد. این کار بار سرور، استفاده از پهنای باند و سرقت احتمالی را کاهش میدهد. |
مدیریت خطای سرور | ایجاد صفحات خطای سفارشی و ارائه پیام های دقیق ظاهر را بهبود می بخشد و عیب یابی در هنگام خطاهای سرور را ساده می کند. |
بلک لیست و وایت لیست آدرس های IP | مجاز کردن یا مسدود کردن آدرسهای IP خاص، قوانین دسترسی به وبسایت را اصلاح میکند. مسدود کردن یا فعال کردن انتخابی دسترسی به وب سایت یک لایه امنیتی اضافی را فراهم می کند. |
مسدود کردن کاربران بر اساس URL ارجاع شده | جلوگیری از دسترسی بر اساس URL ارجاع دهنده راهی برای کنترل دسترسی و ترافیک وب سایت است. همچنین یک لایه امنیتی اضافی با فیلتر کردن URL های ارجاع دهنده غیرمجاز و جلوگیری از منابع هرزنامه فراهم می کند. |
پیاده سازی حفاظت از رمز عبور | استفاده از محافظت از رمز عبور در صفحات یا دایرکتوری های خاص دسترسی کاربران معتبر را محدود می کند. |
ادمین وردپرس این دسترسی را دارد که با استفاده از فایل htaccess، سایت خود را برای رفع نیازهای خاص شخصی سازی و محافظت کند.
با سی پنل فایل .htaccess وردپرس را پیدا کنید
برای پیدا کردن فایل htaccess. با استفاده از سی پنل مراحل زیر را دنبال کنید:
- با اطلاعات ورود خود وارد داشبورد سی پنل شوید.
- در قسمت Files به دنبال File Manager بگردید و آن را باز کنید.
- پوشه مرتبط با نصب وردپرس را که معمولاً www یا public_html نام دارد، پیدا کرده و انتخاب کنید. اگر پوشه قابل مشاهده نباشد، ممکن است پنهان باشد.
- برای پنهان کردن فایل، روی دکمه تنظیمات که در گوشه بالا سمت راست قرار دارد کلیک کنید.
- کادر کنار Show Hidden Files را علامت بزنید و سپس بر روی Save کلیک کنید.
نحوه ایجاد فایل پیش فرض .htaccess در وردپرس
مواقعی وجود دارد که وردپرس نمی تواند فایل پیش فرض .htaccess را ایجاد کند یا بعداً حذف می شود. برای ایجاد دستی فایل htaccess مراحل زیر را انجام دهید:
- به دایرکتوری نصب ریشه وردپرس (public_html یا www) بروید.
- روی دکمه + File واقع در گوشه سمت چپ بالا کلیک کنید تا یک فایل جدید بسازید.
- نام فایل را .htaccess بگذارید و گزینه Create new file را انتخاب کنید.
یادآوری: مطمئن شوید که فایل های مخفی نمایش داده می شوند. برای راهنمایی در مورد آشکار کردن فایل های مخفی، بخش قبلی را مرور کنید.
4. ویرایش فایل را با باز کردن آن شروع کنید. اگر از سی پنل استفاده می کنید، فایل خاص را پیدا کرده و انتخاب کنید. بر روی گزینه Edit که در نوار بالا نمایش داده شده است کلیک کنید یا روی فایل کلیک راست کرده و Edit را انتخاب کنید.
5. کدهای زیر را به فایل اضافه کنید:
# BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ – [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
6. save کنید و فایل را ببندید.
چگونه فایل htaccess وردپرس را ویرایش کنیم
اگر از افزونه yoast seo در وردپرس استفاده میکنید، به ادمین وبسایت وردپرس خود لاگین کنید. پس از ورود به سیستم، به «داشبورد» هدایت خواهید شد.
با کلیک بر روی آن در منوی سمت چپ داشبورد، به بخش «SEO» بروید.
تنظیمات “SEO” را با کلیک بر روی “Tools” گسترش دهید تا گزینه های بیشتری در دسترس شما باشد.
روی «file editor» کلیک کنید.
اگر وردپرس شما، ویرایش فایل را غیرفعال کرده باشد، این منو ظاهر نمی شود. پس ابتدا ویرایش فایل را فعال کنید یا فایل را از طریق FTP ویرایش کنید.
تغییرات را در فایل مورد نظر اعمال و ذخیره کنید.
نحوه ویرایش htaccess وردپرس با استفاده از یک افزونه
روش دیگر برای ویرایش فایل htaccess. استفاده از افزونه وردپرس مانند ویرایشگر فایل Htaccess است. افزونه هایی مانند این به شما امکان می دهند فایل .htaccess را مستقیماً در خود وردپرس ویرایش کنید.
برای تغییر فایل htaccess خود در وردپرس، این مراحل را با استفاده از افزونه wp htaccess editor دنبال کنید:
- وارد داشبورد مدیریت وردپرس خود شوید.
- افزونه «wp htaccess editor» را در مخزن افزونه وردپرس بیابید.
- افزونه را نصب و فعال کنید.
- به بخش «setting» در داشبورد بروید و «WP Htaccess editor» را انتخاب کنید.
- برای احتیاط یک خط جدید قبل از بخش «# BEGIN WordPress» در فایل htaccess. اضافه کنید.
- از آنجا، می توانید هر قطعه کدی را برای تنظیم قوانین یا پیکربندی های دلخواه خود وارد کنید.
ریدایرکت ها در htaccess وردپرس
میتوانید از فایل htaccess. در وردپرس برای کنترل تغییر مسیرهای وبسایت استفاده کنید. در زیر برخی از قوانین متداول استفاده شده است که به شما کمک می کند تا تغییر مسیرها را در وب سایت های وردپرس خود تنظیم و کنترل کنید.
ریدایرکت 301 (دائمی)
ریدایرکت 301 به موتورهای جستجو می گوید که URL به طور دائم به مکان دیگری منتقل شده است. این فقط به URL ها محدود نمی شود. همچنین می توانید یک پوشه، صفحه یا حتی یک وب سایت کامل را تغییر مسیر دهید. قطعه زیر oldpage.html را به newpage.html هدایت می کند:
Redirect 301 /oldpage.html https://www.yourwebsite.com/newpage.html
ریدایرکت 302 (موقت)
برخلاف 301، ریدایرکت 302 به موتورهای جستجو می گوید که تغییر مسیر موقتی است. استفاده از ریدایرکت 302 به شما کمک می کند تا درهم ریختگی SERP را کاهش دهید (یا حتی از آن جلوگیری کنید).
خط زیر را به فایل htaccess اضافه کنید:
Redirect 302 /oldpage.html http://www.yourwebsite.com/newpage.html
ریدایرکت اجباری URL به www
قانون htaccess زیر در وردپرس، همه بازدیدکنندگان در example.com را مجبور میکند از www.example.com استفاده کنند.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]
ریدایرکت اجباری URL به URL بدون www
قانون .htaccess زیر، همه بازدیدکنندگان در www.example.com را مجبور میکند از example.com استفاده کنند.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]
HTTPS اجباری
قانون زیر در فایل .htaccess وردپرس، همه بازدیدکنندگان شما را مجبور می کند که از HTTPS به جای HTTP برای همه URL ها استفاده کنند.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
HTTP اجباری
قانون زیر در فایل htaccess. بازدیدکنندگان شما را مجبور می کند که برای همه URL ها به جای HTTPS از HTTP استفاده کنند.
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
تغییر مسیر دامنه به زیردایرکتوری
قانون زیر آدرس ریشه دامنه را به زیر شاخه انتخابی شما هدایت می کند.
RewriteCond %{HTTP_HOST} ^example.com$
RewriteCond %{REQUEST_URI} !^/sub-directory-name/
RewriteRule (.*) /subdir/$1
یک URL را تغییر مسیر دهید
اگر دو دامنه از یک وب سایت استفاده می کنند، قانون htaccess. زیر یک دامنه را به دامنه دیگر هدایت می کند.
Redirect 301 / http://www.mynewwebsite.com/
یک نوشته یا برگه را تغییر مسیر دهید
اگر میخواهید یک پست یا صفحه را تغییر مسیر دهید، میتوانید خط کد زیر را برای هر پست یا صفحهای که میخواهید تغییر مسیر دهید اضافه کنید:
Redirect 301 /old-url-slug https://yourdomain.com/new-url-slug
فرض کنید میخواهید «https://www.parsvds.com/blog/core-web-vitals/» را به «https://www.parsvds.com/blog/core-web-vitals-seo/ هدایت کنید. سپس، خط کد زیر را در فایل htaccess. اضافه کنید:
Redirect 301 /core-web-vitals/ https://www.parsvds.com/blog/core-web-vitals-seo/
URL قدیمی اکنون همه افرادی را که روی یک پیوند داخلی یا خارجی کلیک می کنند به URL جدید هدایت می کند.
ریدایرکت کل سایت
اگر می خواهید کل وب سایت خود را به یک دامنه جدید هدایت کنید، می توانید قطعه کد زیر را به فایل .htaccess در وردپرس اضافه کنید:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^olddummydomain.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.olddummydomain.com [NC]
RewriteRule ^(.*)$ https://newdummydomain.com/$1 [L,R=301,NC]
متن ساختگی در کد بالا را با نام دامنه قدیمی و جدید خود جایگزین کنید.
برای درک بهتر: تصور کنید وبسایتی به نام «www.oldwebsite.com/about» دارید. با تغییراتی که ایجاد کردهایم، هرکسی که به آن پیوند مراجعه کند به صفحه جدید در «www.newwebsite.com/about» منتقل میشود.