فایل htaccess وردپرس یک فایل اصلی و حیاتی برای سایت شما است. به طور کلی، نباید نگران فایل htaccess باشید زیرا به طور خودکار با نصب وردپرس، ایجاد میشود. با این حال، در مواردی اگر افزونهای موجب خراب شدن این فایل شود و پیرو آن سایت شما از کار افتاده باشد، باید آن را بازسازی کنید.
دقیقاً به دلیل چنین شرایطی است که ما همیشه پشتیبان گیری مداوم از سایت را توصیه میکنیم. اگر یک نسخه پشتیبان دارید، میتوانید به جای ویرایش کد سایت، سایت خود را با چند کلیک بازسازی کنید.
همانطور که گفته شد، در این مقاله، ما به شما نشان خواهیم داد که چگونه فایل پیشفرض htaccess وردپرس را پیدا کنید و آن را به طور ایمن ویرایش کنید.
فایل htaccess یک فایل قدرتمند است که دستورات را برای سرور سایت شما تنظیم میکند. این فایل برای عملکرد صحیح سایت شما کاملا ضروری است، بنابراین توصیه میکنیم هنگام ویرایش آن احتیاط کنید. در بیشتر موارد، افزونههایی وجود دارند که میتوانید به جای htaccess از آنها استفاده کنید.
فایل htaccess وردپرس چیست؟
فایل htaccess یکی از فایلهای اصلی سایتهای وردپرسی است که بر روی سرورهای آپاچی قرار دارند. هنگامی که وردپرس برای اولین بار نصب میشود این فایل به طور خودکار ایجاد میشود و هر سایت فایل htaccess مختص خود را خواهد داشت.
فایل پیکربندی سرور سایت شما
فایل htaccess یک فایل پیکربندی سرور است که بر اساس هر دایرکتوری کار میکند.
سرور سایت شما در اصل یک سیستم کامپیوتری است که توسط هاست شما کنترل میشود. در بسیاری از موارد، سایت شما در یک سرور با بسیاری از سایتهای دیگر، به شکل مشترک میزبانی میشود که از آن به عنوان هاست اشتراکی یاد میشود. کاری که فایل htaccess در سایت شما انجام میدهد این است که به شما کمک میکند تنظیمات خاص سرور را مطابق با نیازهای سایت خود سفارشی کنید. این همان فایل پیکربندی سرور است که توضیح داده شد!
فایل htaccess تنظیمات پیکربندی را برای هر دایرکتوری که در آن قرار دارد و همچنین همه زیرشاخههای داخل آن دایرکتوری تغییر میدهد. در یک سرور اشتراکی، سایتها به پوشههای منحصر به فردی تقسیم میشوند. بنابراین، برای اینکه تنظیمات htaccess در کل سایت شما قابل اجرا باشد، فایل باید در دایرکتوری root سایت شما باشد و به این ترتیب، تنظیمات موجود در فایل htaccess سایت شما روی سایتهای دیگر روی همان سرور تاثیری نخواهد داشت.
همچنین میتوانیم فایلهایhtaccess متعددی را در مسیرهای جداگانه برای سفارشیسازی تنظیمات سرور بر اساس هر دایرکتوری، داشتهباشیم. به همین دلیل است که گاهی اوقات ممکن است یک فایل htaccess را در wp-content نیز مشاهده کنید.
Htaccess و وردپرس
وردپرس از فایل htaccess برای مدیریت تغییر مسیرها (ریدایرکت) و ساختار پیوند یکتا استفاده میکند. بهعنوان مثال وقتی پلاگینهای امنیتی و افزونههای کش را نصب میکنید، آنها نیز فایل htaccess را تغییر میدهند.
اگر مجبور به تعمیر فایل htaccess وردپرس هستید که خراب شدهاست، میتوانید آن را با نسخههای پیشفرض جایگزین کنید. ممکن است پس از اصلاح یا تعمیر، فایل htaccess دوباره خراب گردد. دو دلیل برای این مشکل وجود دارد: اولاً، یک افزونه در سایت شما در حال تغییر فایل htaccess است، بنابراین راه حل این است که همه افزونهها را غیرفعال کنید تا ببینید آیا این مسئله برطرف میشود یا خیر. ثانیاً، فایلهای اصلی مانند فایل htaccess میتوانند توسط بدافزارها خراب شوند. در این صورت بهترین راه حل استفاده از افزونههایی است که بدافزارها را از یک سایت وردپرسی حذف میکنند.
محل فایل htaccess در وردپرس کجاست؟
معمولاً فایل htaccess در فهرست اصلی سایت وردپرس شما قرار میگیرد. همانطور که قبلاً گفتیم، ممکن است چندین فایل htaccess در پوشههای مختلف سایت شما وجود داشته باشد. به طور معمول، شما میخواهید پیکربندی را در فایلی که بر کل سایت شما تأثیر میگذارد، تنظیم کنید که این فایل باید در دایرکتوری root قرار داشتهباشد.
فایل مخفی
فایل htaccess با یک نقطه شروع میشود، حضور نقطه در ابتدای اسم فایل باعث میشود اکثر سرورها آن را به عنوان یک فایل مخفی در نظر بگیرند. بسته به روشی که برای دسترسی به فایلهای اصلی وردپرس خود استفاده میکنید ( cPanel، DirectAdmin،FTP یا SSH)، ممکن است لازم باشد گزینه مشاهده فایلهای مخفی را فعال کنید تا بتوانید این فایل را ببینید.
همه سایتها فایل htaccess ندارند
اگر سایت شما فایل htaccess ندارد، جای نگرانی نیست. ابتدا باید از ارائه دهنده هاست خود سوال کنید که از چه نرم افزار سروری استفاده میکند.
از فایل htaccess در سرورهای آپاچی استفاده میشود. آپاچی یک نرم افزار وب سرور محبوب است که توسط میزبانهای وب برای مدیریت سرورهای خود استفاده میشود. اگر سایت شما بر روی یک جایگزین برای آپاچی مانند Nginx میزبانی شود، فایل htaccess در فایلهای سایت وردپرس شما وجود نخواهد داشت. Nginx به طور خاص از نوع دیگری از فایل برای مدیریت پیکربندی سرور استفاده میکند که معمولاً به نام nginx.conf در هاست شما قرار دارد. عملکرد آن متفاوت از htaccess است، بنابراین توصیههایی که برای نحوه تغییر فایل htaccess در WordPress ارائه میدهیم برای nginx.conf کار نمیکند.
چگونه یک فایل htaccess در وردپرس ایجاد کنیم؟
ممکن است به دلایل زیادی نیاز به ایجاد یا جایگزین کردن فایل htaccess وردپرس داشته باشید. شاید سایت شما از کار افتاده است و باید وردپرس خود را تعمیر کنید، یا یک افزونه فایل را خراب کرده است و شما باید یک htaccess وردپرس استاندارد را بازسازی کنید .
همیشه قبل از هر گونه تغییر، یک نسخه پشتیبان کامل از سایت وردپرس بگیرید. حتی اگر سایت شما به خوبی کار نمیکند، باز هم نسخه پشتیبان را تهیه کنید!
سادهترین راه برای جایگزینی فایل htaccess WordPress این است که یک فایل htaccess جدید در رایانه خود ایجاد کنید و آن را در سرور سایت خود آپلود کنید.
- یک ویرایشگر متن در سیستم خود باز کنید.(به عنوان مثال notepad)
- بسته به نوع سایت وردپرسی که دارید، یکی از کدهای زیر را قرار دهید.
برای یک سایت اصلی وردپرس:
# BEGIN WordPress RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
برای وردپرس مولتی سایت:
# BEGIN WordPress Multisite # Using subfolder network type: https://wordpress.org/support/article/htaccess/#multisite RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] # add a trailing slash to /wp-admin RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] RewriteRule . index.php [L] # END WordPress Multisite
- فایل را با نام و پسوند فایل .htaccess ذخیره کنید.اگر ویرایشگر متن شما این اجازه را نمیدهد، فایل را به عنوان یک فایل متنی معمولی ذخیره کنید.
- اگر یک فایل متنی است، بعد از ذخیره روی آن کلیک راست کنید تا پسوند فایل را با استفاده از rename به htaccess تغییر دهید.
- از FTP یا مدیریت فایل cPanel/DirectAdmin برای دسترسی به سرور سایت خود استفاده کنید.فایل قدیمی htaccess را حذف کنید و فایلی را که ایجاد کرده اید در سرور خود آپلود کنید.
شما با موفقیت فایل htaccess را در سایت خود جایگزین کردید.
ممکن است قصد داشتهباشید فایل htaccess را برای یک هفته یا بیشتر زیر نظر داشته باشید تا مطمئن شوید که تغییراتی که اعمال کردهاید ثابت باقی میمانند. در غیر این صورت اگر تغییرات اعمال نشد لازم است عیبیابی را ادامه دهید…
چگونه یک htaccess را در وردپرس ویرایش کنیم؟
فایل htaccess یک فایل قدرتمند برای صاحبان سایتهای وردپرسی است، اگرچه بسیاری از آنها این را نمیدانند. شما میتوانید از قابلیتهای فایل htaccess به کمک پلاگینهای وردپرس استفاده کنید (این راه بسیار ساده است و ما به شما توصیه میکنیم) و یا در مواردی، ممکن است لازم باشد فایل htaccess را مستقیماً ویرایش کنید.
بهترین روشها برای ویرایش فایل htaccess وردپرس
- همیشه قبل از ایجاد هر گونه تغییری در سایت خود، از آن یک نسخه پشتیبان تهیه کنید.
- هنگام افزودن یک قطعه کد به فایل htaccess که از جای دیگری کپی شده است، مطمئن شوید که بین خطوط یا حتی کاراکترها فاصله وجود ندارد؛ زیرا هرآنچه در قطعه کد قرار داشتهباشد به عنوان دستورالعملهای سرور شناخته میشود. یک قطعه کد میتواند حاوی چندین خط باشد و معمولاً علامت بک اسلش \ به عنوان آخرین کاراکتر در هر قطعه کد نشان داده میشود.
فایل WP htaccess را با استفاده از یک افزونه ویرایش کنید
ما به طور کلی توصیه میکنیم از یک افزونه برای ویرایش هر فایل اصلی استفاده کنید، زیرا این کار از سایت شما در برابر خطاهای سهوی محافظت میکند. بسیاری از افراد به طور تصادفی کاراکترها، کدها یا حتی فایلهای کامل را حذف کردهاند و مجبور شدهاند روزها برای تعمیر آن، وقت صرف کنند. البته اگر نسخه پشتیبان سایت خود را در دست داشتند میتوانستند سایت خود را به سرعت بازیابی کنند.
- Htaccess File Editor را در بخش افزودن افزونه پیدا کنید.آن را نصب کرده و سپس فعال کنید .
- در بخش تنظیمات پیشخوان وردپرس، تنظیمات افزونه را پیدا کنید.
- محتوای کادر قرمز رنگ را به دقت بخوانید و بر روی “I understand. Enable the editor.”کلیک کنید تا بتوانید فایل htaccess خود را ویرایش کنید.
متن آن به شرح زیر است:
لطفا در هنگام ویرایش فایل htaccess مراقب باشید! این افزونه هر بار که تغییری ایجاد میکنید، به طور خودکار پشتیبانگیری میکند. دستورالعملهای دقیق در مورد نحوه بازیابی نسخههای پشتیبان در کادر بالا موجود است.
- دستورات مورد نظر خود را به فایل، در پنل ارائه شده اضافه کنید و پس از اتمام بر روی Save Changes کلیک کنید.
فایل htaccess را با استفاده از CPanel / DirectAdmin ویرایش کنید
با فرض اینکه هاست شما از نرمافزار cPanel/DirectAdminبرای مدیریت، استفاده میکند میتوانید از File Manager نیز برای ویرایش سریع فایل htaccess استفاده کنید.
- وارد cPanel/DirectAdmin شوید یا از طریق داشبورد هاست خود به آنجا بروید.
- File Manager را باز کنید.شما باید به طور پیشفرض در دایرکتوری root سایت خود باشید.اگر نه، به root یا پوشهای که وردپرس در آن نصب شدهاست بروید.
- از آنجایی که فایل htaccess یک فایل سیستمی است، به طور پیشفرض مخفی میشود.روی نماد چرخ دنده تنظیمات در File Manager کلیک کنید و تیک Show Hidden Files (dotfiles) را علامت بزنید. Saveکنید و کادر را ببندید. فایل htaccess اکنون باید در فهرست اصلی وردپرس قابل مشاهده باشد.
- روی فایل کلیک راست کنید.میتوانید فایل را دانلود کنید تا آن را ویرایش کنید یا روی Edit کلیک کنید تا یک ویرایشگر فایل در مرورگر باز شود.(ما edit را انتخاب کردیم)
- پس از ایجاد تغییرات، فایل را ذخیره کنید و برگه را ببندید.تغییرات شما ذخیره میشود.
آیا ویرایش فایل htaccessوردپرس ایده خوبی است؟
ما در مورد این که فایل htaccess چه کارهایی میتواند انجام دهد و چقدر برای سایت شما مهم است، صحبت کردیم. این فایل میتواند سرور را برای سایت شما سفارشی کند. به طور خلاصه میتوان گفت این فایل واقعاً معجزه میکند. حداقل کاری که فایل htaccess میکند آن است که بر پیوندهای یکتا موجود در سایت شما نظارت میکند، بنابراین اگر محتوای زیادی با URLهای بهینه سازی شده برای SEO دارید، میتوانید با یک فایل htaccess بر آنها نظارت کنید.
به طور خلاصه، ما از شما میخواهیم: اگر میتوانید راه دیگری برای اعمال تغییرات در سایت وردپرسی خود پیدا کنید، فایل htaccess را ویرایش نکنید .
طبق مستندات سرور آپاچی، پیکربندی تنظیمات htaccess عملکرد سرور را کاهش میدهد. عمدتاً به این دلیل که هر بار که یک صفحه یا asset (فایلهای جاوا اسکریپت، css، فونتها، تصاویر و …) از سرور درخواست شود، فایل htaccessمجدداً بارگذاری میشود.
علاوه بر این، اگرچه فایل htaccess به منظور کنترل بیشتر تنظیمات سرور برای کاربران در نظر گرفته شده است، اما واقعیت این است که میتواند حفرههای امنیتی ایجاد کند. بنابراین لطفاً مراقب نحوه استفاده از آن باشید و از ایجاد تغییرات در آن خودداری کنید مگر اینکه آن تغییرات را کاملاً درک کنید.
علاوه بر این، میزبان شما ممکن است پیکربندی سرور خود را تغییر دهد، بنابراین بهتر است برای انجام تغییراتی در سایت خود به فایل htaccess تکیه نکنید.
عیب یابی مشکلات htaccess
قطعه کدی که اضافه کردید کار نمیکند
برای اینکه قطعه کد موجود در فایل htaccess کار کند، باید یک گزینه AllowOverride در سرور فعال باشد. متأسفانه، اگر از هاست اشتراکی استفاده میکنید، نمیتوانید برای رفع این مشکل کاری انجام دهید، زیرا این تنظیمات در سطح سرور اتفاق میافتد و توسط شرکت هاستینگ مدیریت میشود. شما میتوانید برای حل این مشکل با پشتیبانی هاست خود تماس بگیرید یا از طریق افزونهها راههای جایگزین برای رسیدن به هدف خود بیابید.
خطاهای سرور پس از ایجاد تغییرات، ظاهر شدهاند
ممکن است هنگام بارگذاری سایت خود، پس از ویرایش یا ایجاد یک فایل htaccess، خطای سرور را مشاهده کنید. این مسئله به دو دلیل میتواند اتفاق بیفتد:
همانطور که در مشکل پیشین گفتیم، این مورد هم ممکن است به دلیل فعال نبودن گزینه AllowOverride باشد. به عنوان مثال، اگر میخواهیدIPها را از فایل htaccess خود در لیست سیاه قرار دهید، باید یک دستورالعمل AllowOverride در فایل پیکربندی سرور اصلی وجود داشته باشد تا این قابلیت برای سایت شما کار کند. اگر از یک هاست اشتراکی استفاده میکنید، نمیتوانید این تغییرات را انجام دهید، این تنظیمات توسط شرکت هاستینگ کنترل میشوند، زیرا این نوع تغییرات در فایل htaccess بر روی هر سایتی که روی آن سرور باشد، تأثیر میگذارد.
البته گاهاً ممکن است یک خطای نحوی در دستورالعملها وجود داشته باشد. بنابراین لازم است کد را به دقت بررسی کنید که مبادا در آن کاراکترهای اضافی یا حذف شده، یا حتی فاصله اضافی وجود داشته باشد.
تغییراتی که ایجاد میکنید در فایل باقی نمیمانند
یک مشکل رایج در ایجاد تغییرات در فایل htaccess این است که گاهی اوقات این تغییرات در فایل باقی نمیمانند و ظرف چند روز (معمولاً حدود 1-2 روز) فایل htaccess به حالت قبلی خود باز میگردد.
دو دلیل احتمالی برای این اتفاق وجود دارد. معمولاً یک پلاگین فایل را بر اساس کاری که قرار است انجام دهد، بازنویسی میکند. برای مثال، کش، فایروال یا پلاگینهای امنیتی، برای عملکرد صحیح باید تغییراتی در فایل htaccess ایجاد کنند بنابراین برای برطرف کرن این مشکل لازم است همه افزونهها را غیرفعال کنید و سپس آنها را یکی یکی دوباره فعال کنید تا افزونهای که مسبب این مشکل شدهاست را پیدا کنید.
ممکن است پس از حذف آن افزونه باز هم این مشکل برطرف نشود و دلیل جدیتری وجود داشته باشد که این مشکل را ایجاد میکند. ممکن است سایت شما هک شدهباشد و بدافزار هر بار فایل htaccess را بازنویسی کند. اگر به این مورد مشکوک هستید که سایت شما هک شده است، ما به شما حذف بدافزار با استفاده از افزونه امنیتی وردپرس را پیشنهاد میدهیم.
سوالات متداول
فایل htaccess وردپرس کجاست؟
فایل htaccess وردپرس به همراه سایر فایلهای اصلی در دایرکتوری root سایت شما قرار دارند. برای دسترسی به فایل htaccess، میتوانید از مدیریت فایل DirectAdmin/cPanelیا FTP استفاده کنید. دقت کنید که در تنظیمات، مشاهده فایلهای مخفی را فعال کنید؛ زیرا این یک فایل سیستمی است که به طور پیشفرض مخفی است.
چگونه یک فایل htaccess را به وردپرس اضافه کنم؟
برای افزودن یک فایل htaccess به وردپرس، کد پیشفرض را از WordPress.org کپی کنید. سپس یک فایل در ویرایشگر متن در رایانه خود ایجاد کنید و فایل را با نام فایل و پسوند “htaccess” ذخیره کنید. سپس با استفاده از FTP یا مدیریت فایل DirectAdmin/cPanelبه سرور سایت خود متصل شوید و فایل را در دایرکتوری root سایت خود آپلود کنید.
فایل htaccess در وردپرس چیست؟
فایل htaccess در وردپرس، یک فایل پیکربندی سرور برای سایتهایی است که روی سرورهای آپاچی میزبانی میشوند. وردپرس از این فایل برای تنظیمات پیوند یکتا و مدیریت ریدایرکتها استفاده میکند. فایل htaccess میتواند برای پیکربندی چند نوع تنظیمات روی یک سرور استفاده شود.
چگونه یک فایل htaccess را از وردپرس دانلود کنم؟
برای دانلود یک فایل htaccess از سایت وردپرس خود، به سرور سایت خود متصل شوید. برای انجام این کار میتوانید از مدیریت فایل DirectAdmin/cPanelیا یک کلاینت FTP استفاده کنید. دقت کنید که در تنظیمات، مشاهده فایلهای مخفی را فعال کنید و سپس برای دانلود فایل کلیک راست کنید.
اولین کامنت را شما بگذارید!