
اخیراً یکی از خوانندگان ما پرسید که آیا میتوان وردپرس را از بازنویسی کد سفارشی در فایل htaccess. جلوگیری کرد؟
وردپرس به همراه چندین افزونه تنظیمات سفارشی را به فایل پیکربندی .htaccess اضافه می کند. اگر کد سفارشی خود را به .htaccess اضافه کرده اید، ممکن است نگران بازنویسی یا حذف شدن آن باشید.
در این مقاله به شما نشان خواهیم داد که چگونه وردپرس را از بازنویسی فایل htaccess. جلوگیری کنید.

چرا وردپرس فایل .htaccess را بازنویسی می کند؟
فایل htaccess شما یک فایل پیکربندی قدرتمند است که تنظیمات مهمی را برای وب سایت وردپرس شما ذخیره می کند. این شامل قوانینی است که به سرور میزبان شما می گوید که چگونه سایت شما را مدیریت کند.
وردپرس از فایل .htaccess برای ذخیره تنظیمات پیوند دائمی خود استفاده می کند. هر زمان که پیوندهای دائمی خود را تغییر دهید یا بازسازی کنید، وردپرس به طور خودکار تنظیمات قدیمی را در htaccess. با تنظیمات جدید بازنویسی می کند.
برخی از افزونه های وردپرس نیز تنظیمات خود را در htaccess ذخیره می کنند. برای مثال، افزونه W3 Total Cache فایل .htaccess شما را برای پیکربندی ابزارهای کش و بهینه سازی که بخشی از افزونه هستند، تغییر می دهد.
در نهایت، می توانید تغییرات سفارشی خود را در .htacess ایجاد کنید تا نحوه عملکرد وب سایت خود را کنترل کنید. به عنوان مثال، می توانید قوانین سفارشی را به فایل اضافه کنید که از ناحیه مدیریت شما محافظت می کند، سایت شما را در برابر هکرها ایمن نگه می دارد، تغییر مسیرها را تنظیم می کند، آدرس های IP مشکوک را ممنوع می کند و موارد دیگر.
برخی از کاربران نگران هستند که اگر قوانین سفارشی خود را به .htaccess اضافه کنند، ممکن است زمانی که وردپرس فایل را با تنظیمات جدید بازنویسی می کند، حذف شوند. سایر کاربران ترجیح می دهند .htaccess را به صورت دستی پیکربندی کنند و به وردپرس اجازه نوشتن روی آن را ندهند.
با این اوصاف، بیایید به نحوه جلوگیری از بازنویسی فایل htaccess وردپرس نگاه کنیم. فقط از پیوندهای سریع زیر استفاده کنید تا به بخش مورد علاقه خود بروید.
چگونه از بازنویسی قوانین htaccess وردپرس جلوگیری کنیم
خبر خوب این است که اگر بدانید فایل htaccess. چگونه کار می کند، می توانید مطمئن باشید که قوانین سفارشی شما رونویسی نمی شوند.
این به این دلیل است که قسمت هایی از فایل که توسط وردپرس یا افزونه های شما اصلاح می شود به وضوح مشخص شده اند. فقط مطمئن شوید که کدی را به این مناطق اضافه نکنید.
کد موجود در تگ های وردپرس را تغییر ندهید
همانطور که قبلاً گفتیم، وردپرس از htaccess. برای ذخیره تنظیمات برای ساختار URL مناسب SEO استفاده می کند. زمانی که تنظیمات اتصال دائمی خود را تغییر دهید، کدی که در فایل می نویسد به طور خودکار بازنویسی و به روز می شود.
همانطور که در تصویر زیر می بینید، وردپرس این اطلاعات را بین دو تگ ذخیره می کند. # BEGIN WordPress
و # END WordPress
.

به هشدار داخل این تگ ها توجه کنید:
دستورالعمل ها (خطوط) بین “BEGIN WordPress” و “END WordPress” به صورت پویا تولید می شوند و فقط باید از طریق فیلترهای وردپرس تغییر کنند. هر گونه تغییر در دستورالعمل ها بین این برچسب ها بازنویسی می شود.
این بدان معناست که وردپرس هیچ کدی را که خارج از این تگ ها اضافه می کنید، بازنویسی یا اصلاح نمی کند. کاربران معمولا کد سفارشی خود را در بالای فایل، بالای فایل اضافه می کنند # BEGIN WordPress
نشانگر
کد موجود در تگ های افزودنی خود را تغییر ندهید
هنگامی که یک افزونه تنظیمات خود را در htaccess. ذخیره می کند، آن را بین تگ هایی نیز قرار می دهد که شبیه به آن هستند # BEGIN Plugin
و # END Plugin
.
به عنوان مثال، اگر افزونه W3 Total Cache را برای بهبود سرعت و عملکرد وب سایت خود نصب و پیکربندی کنید، آنگاه قوانینی را به htaccess. # BEGIN W3TC Browser Cache
و # END W3TC Browser Cache
نشانگرها

هر بار که تنظیمات افزونه را تغییر می دهید، این قوانین بازنویسی می شوند، بنابراین باید مراقب باشید که قوانین htaccess سفارشی خود را بین این برچسب ها اضافه نکنید.
ایجاد برچسب برای کد سفارشی شما
در موارد نادر، یک پلاگین نادرست می تواند کد را خارج از خود تغییر دهد # BEGIN
و # END
نشانگرها با این حال، من معمولاً کد یافت شده بین برچسب های استفاده شده توسط وردپرس یا سایر افزونه ها را تغییر نمی دهم.
اگر نگران هستید که یک پلاگین نادرست کد شما را بازنویسی کند، می توانید برچسب های خود را به فایل htaccess. اضافه کنید.
مثلا می توانید بنویسید # BEGIN MyCustomCode
و # END MyCustomCode
در بالای فایل htaccess تگ کنید و سپس قوانین سفارشی خود را بین آن تگ ها اضافه کنید.

اگر همچنین نیاز به اضافه کردن کد در انتهای htaccess. دارید، میتوانید مجموعهای از برچسبها را در آنجا اضافه کنید. فقط به یاد داشته باشید که نام های مختلف را به آنها بدهید. به عنوان مثال، می توانید از “MyCustomCodeTop” و “MyCustomCodeBottom” استفاده کنید.
چگونه از تغییر htaccess وردپرس جلوگیری کنیم
حالا که فهمیدید htaccess چگونه کار می کند، شمامی توانید مطمئن باشید که کد سفارشی شما توسط وردپرس یا افزونه های شما بازنویسی نمی شود.
با این حال، برخی از توسعه دهندگان و کاربران پیشرفته می خواهند وردپرس را از ایجاد تغییرات در htaccess. منع کنند.
به عنوان مثال، آنها ممکن است بخواهند با وارد کردن تنظیمات به صورت دستی در htaccess. پیوندهای دائمی ایجاد کنند. در این صورت، آنها می خواهند با جلوگیری از ذخیره تنظیمات پیوند دائمی خود در فایل وردپرس، از درگیری جلوگیری کنند.
ما این کار را توصیه نمی کنیم مگر اینکه بدانید چه کاری انجام می دهید زیرا می تواند منجر به عواقب غیرمنتظره شود. با این حال، این کار را می توان با تغییر مجوزهای فایل یا استفاده از کد انجام داد.
وردپرس را از تغییر htaccess با استفاده از مجوزهای فایل متوقف کنید
یکی از راه های جلوگیری از تغییر htaccess وردپرس این است که فایل را فقط خواندنی کنید. برای انجام این کار، باید مجوزهای فایل را با استفاده از یک سرویس گیرنده FTP یا مدیر فایل ارائه شده توسط ارائه دهنده هاست وردپرس خود تغییر دهید.
فایل htaccess. را در دایرکتوری اصلی نصب وردپرس خود خواهید یافت. سپس باید روی فایل کلیک راست کرده و “File Permissions” را انتخاب کنید.

این یک پنجره بازشو نشان می دهد که در آن می توانید ویژگی های فایل را تغییر دهید.
تنظیم پیشفرض 644 خواهد بود، اما میتوانید با تایپ مستقیم در قسمت Numeric Value یا با اطمینان از علامت زدن کادرهای Read Only، آن را به 444 تغییر دهید.

پس از کلیک بر روی دکمه “OK”، فایل فقط خواندنی خواهد بود و قابل تغییر نیست.
البته این بدان معناست که شما نیز نمی توانید در فایل بنویسید. وقتی می خواهید تغییراتی ایجاد کنید، باید مجوزهای فایل را به طور موقت به 644 برگردانید.
وردپرس را از تغییر htaccess با استفاده از کد متوقف کنید
راه حل دیگر استفاده از یک قطعه کد است که به وردپرس اجازه می دهد در فایل htaccess. ننویسد. اگر می خواهید از تغییر htaccess. وردپرس بدون مسدود کردن افزونه های خود جلوگیری کنید، این کار مفید است.
توجه داشته باشید: ویرایش هر فایل اصلی وردپرس می تواند خطرناک باشد. حتی یک اشتباه کوچک می تواند باعث ایجاد خطاهای بزرگ در سایت شما شود. بنابراین، ما این روش را فقط برای کاربران حرفه ای توصیه می کنیم.
به سادگی قطعه کد زیر را به انتهای فایل wp-config.php خود اضافه کنید. اگر به کمک نیاز دارید، لطفاً راهنمای ما در مورد نحوه ویرایش فایل wp-config.php در وردپرس را ببینید.
add_filter('got_rewrite', '__return_false');
پس از انجام این کار، وردپرس دیگر در فایل htaccess. نمینویسد.
هنگامی که وردپرس نمی تواند htaccess. را تغییر دهد، پیام خطا نمایش داده می شود
اگر زمانی که .htaccess روی فقط خواندنی تنظیم شده است، سعی کنید تنظیمات پیوند ثابت خود را تغییر دهید، یک پیام خطا نمایش داده می شود.
در بالای تنظیمات » اتصالات مداوم پیام “شما باید فایل htaccess. خود را اکنون به روز کنید” را مشاهده خواهید کرد.

این به شما می گوید که وردپرس نتوانسته است فایل htaccess. را تغییر دهد.
معمولاً این همان چیزی است که شما قصد دارید. با این حال، اگر می خواهید تنظیمات پیوند دائمی وردپرس را به htaccess. اضافه کنید، باید آن را به صورت دستی انجام دهید.
در پایین تنظیمات ≫ اتصالات مداوم در صفحه، پیغام خطا دیگری را مشاهده خواهید کرد که فایل htaccess شما قابل نوشتن نیست. در زیر قوانینی را که باید به .htaccess اضافه شوند را مشاهده خواهید کرد.

اگر میخواهید این تنظیمات را اضافه کنید، باید موقتاً مجوزهای فایل htaccess. را به 644 برگردانید تا بتوان آن را ویرایش کرد. در مرحله بعد، باید قوانین را بین تگ های BEGIN و END وردپرس فایل قرار دهید و کدی را که از قبل وجود دارد جایگزین کنید.
وقتی کارتان تمام شد، فقط مقدار را به 444 برگردانید و فایل را ذخیره کنید. دوباره غیرقابل نوشتن خواهد بود.
امیدواریم این آموزش به شما کمک کرده باشد که یاد بگیرید چگونه وردپرس را از بازنویسی فایل htaccess. جلوگیری کنید. همچنین ممکن است بخواهید نحوه افزودن اعلان فشار در وردپرس را بیاموزید و لیست تخصصی ما از بهترین افزونه ها و ابزارهای سئو وردپرس را بررسی کنید.
اگر از این مقاله لذت بردید، لطفا در کانال یوتیوب ما برای آموزش های ویدئویی وردپرس مشترک شوید. شما همچنین می توانید ما را در توییتر و فیس بوک