الدليل النهائي لملف WordPress .htaccess

نشرت: 2022-08-10

ليس من السهل فهمي حقًا: الكود الافتراضي يشبه الصينية.

أنا بارزة بسبب مظهري الفريد ، حيث إن اسمي ليس له امتداد.

أنا أيضا لدي قوى سحرية. إذا قمت بإعداد لي بشكل صحيح ، فأنا قادر على ما يلي:

  • تحسين أمان موقع الويب الخاص بك.
  • زيادة سرعة تحميل صفحاتك.
  • إعداد عمليات إعادة التوجيه.
  • الحد من البريد العشوائي.
  • وحتى بعض النكات: هذا هو جانبي الخجول.
حقًا؟!
نكات؟ هل حقا؟

مازلت لا تعرف من أنا؟ أنا ملف .htaccess لموقع الويب الخاص بك على WordPress. دعنا نتعرف علي بشكل أفضل في هذا الدليل حول كيفية عملي.

من خلال هذه السطور ، سوف تكتشف أكثر من ثلاثين إرشادات لتكويني. يتم تجسيدها في شكل أجزاء من التعليمات البرمجية الجاهزة للاستخدام ، والتي سيكون عليك فقط نسخها ولصقها في المنزل.

استمر في القراءة ، فلن تشعر بخيبة أمل!

ملخص

  1. ما هو ملف htaccess؟
    1. كيف تعمل ملفات .htaccess؟
      1. كيفية إنشاء ملف htaccess
        1. إجراءات احترازية قبل تخصيص ملف .htaccess
          1. كيفية تعديل ملف htaccess الخاص بك بشكل صحيح.
            1. كيفية تخصيص ملف .htaccess على جذر موقع الويب؟
              1. كيفية تخصيص ملف htaccess في wp-admin
                1. كيفية تخصيص ملف htaccess في wp-include؟
                  1. كيفية تخصيص ملف htaccess في محتوى wp؟
                    1. كيفية تخصيص ملف htaccess في wp-content / uploads؟
                      1. الملخص النهائي لملف .htacess في WordPress

                        تمت كتابة هذه المقالة في الأصل في أكتوبر 2015 ، وتم تحديثها آخر مرة في يوليو 2022.

                        تحتاج أفضل مشاريعك في WordPress إلى أفضل مضيف!

                        يوصي WPMarmite باستخدام Bluehost: أداء رائع ودعم رائع. كل ما تحتاجه لبداية رائعة.

                        جرب Bluehost
                        CTA Bluehost WPMarmite

                        ما هو ملف htaccess؟

                        ملف .htaccess هو ملف تكوين لـ Apache ، البرنامج الذي تستخدمه معظم خوادم الويب للتشغيل. سيعطي محتوى هذا الملف توجيهات إلى Apache حتى يتصرف الخادم بطريقة معينة.

                        احذر ، بعض مضيفات الويب تعمل فقط على خادم NGINX. هذه هي حالة دولاب الموازنة ، على سبيل المثال. ليس لديهم ملف .htaccess .

                        تحتوي جميع مواقع الويب التي تستخدم WordPress تقريبًا على ملف .htaccess . في الواقع ، يقوم WordPress بإنشائه تلقائيًا أثناء التثبيت ، لتضمين إعدادات الروابط الثابتة لموقع الويب.

                        عندما تذهب إلى الإعدادات> الروابط الثابتة لاختيار تنسيق URL (عادةً "اسم المشاركة") ، يتم تعديل ملف .htaccess .

                        كيف تعمل ملفات .htaccess؟

                        يجب أن تعلم أن موقع الويب يمكن أن يحتوي على عدة ملفات .htaccess .

                        أولاً ، يوجد ملف .htaccess الرئيسي ، الموجود في جذر موقع الويب.

                        جذر موقع الويب هو المكان الذي توجد فيه ملفات WordPress (مجلدات wp-admin و wp-includes include و wp-content بالإضافة إلى بعض الملفات الأخرى) على الخادم الخاص بك. يمكنك الوصول إليها عن طريق الاتصال بعميل FTP ، على سبيل المثال. قد يختلف اسم المجلد الجذر هذا وفقًا لموفر الاستضافة. على سبيل المثال ، يطلق عليه public_html مع Bluehost (رابط تابع) و www مع OVH.

                        ستؤثر محتويات ملف .htaccess الرئيسي على موقع الويب بالكامل.

                        يمكن إنشاء ملفات .htaccess أخرى في الدلائل الفرعية. في حالة WordPress ، يمكن وضع أحدهم في دليل wp-admin أو wp-content/uploads ، على سبيل المثال.

                        ستؤثر ملفات .htaccess الثانوية على الدلائل التي توجد بها ، بالإضافة إلى الدلائل الفرعية الخاصة بها.

                        إذا تخيلنا أن ملف .htaccess موجود في wp-content/uploads ، فإن دليل uploads وجميع الأدلة الفرعية الخاصة به سوف يتأثر بما تم تعريفه في ملف .htaccess .

                        كيفية إنشاء ملف htaccess

                        منطقيا ، يجب أن يحتوي موقع الويب الخاص بك على ملف .htaccess واحد على الأقل ، الملف الموجود في جذر موقع الويب الخاص بك. يمكنك تحريره باستخدام محرر الكود المفضل لديك (Sublime Text و Brackets و Notepad ++ و Coda وما إلى ذلك).

                        هناك حلول أخرى ، مثل البرنامج المساعد Htaccess File Editor ، لتحريره مباشرة من لوحة معلومات WordPress الخاصة بك.

                        ولكن ، إذا كانت هناك أي مشاكل ، فسيتعين عليك مراجعة عميل FTP ومحرر الشفرة ، لذلك يمكنك القيام بذلك يدويًا أيضًا.

                        إذا كنت بحاجة إلى إضافة ملف .htaccess إلى دليل فرعي ، فاتبع هذه الإرشادات.

                        قم بإنشاء ملف htaccess من جهاز الكمبيوتر الخاص بك

                        1. قم بإنشاء ملف نصي جديد وقم htaccess.txt .
                        2. قم بتحريره كما يحلو لك.
                        3. أرسلها إلى جذر الخادم الخاص بك.
                        4. قم بإعادة تسميته .htaccess .
                        ملف htaccess على برنامج FTP.

                        قم بإنشاء ملف htaccess من الخادم الخاص بك

                        1. انقر بزر الماوس الأيمن في الدليل حيث يجب أن يكون.
                        2. أضف ملفًا جديدًا وقم .htaccess.
                        3. قم بتحريره باستخدام محرر الكود الخاص بك (Notepad ++ أو Coda أو Sublime Text أو غير ذلك).

                        تهانينا ، أنت تعرف الآن ما هو ملف .htaccess وكيفية إنشائه. قبل أن تعرف الإرشادات التي يمكنك إضافتها إليها ، تذكر أن تكون حذرًا!

                        انتبه لعينيك ، فقد تلسع!

                        إجراءات احترازية قبل تخصيص ملف .htaccess

                        يعد تخصيص رمز ملف .htaccess أمرًا مباشرًا إلى حد ما (خاصة مع مقتطفات التعليمات البرمجية المعروضة في بقية هذه المقالة) ، ولكن لا يزال يتعين عليك عدم الخوض في ذلك باستخدام البنادق المشتعلة.

                        قبل إجراء أي تغييرات ، أوصي بأن تقوم أولاً بعمل نسخة احتياطية من موقع WordPress الخاص بك. لهذا ، يمكنك استخدام مكون إضافي مخصص مثل UpdraftPlus.

                        بعد ذلك ، احفظ المحتويات الأولية لملف .htaccess الخاص بك. للقيام بذلك ، يمكنك:

                        • قم بتكرار ملف .htaccess على الخادم الخاص بك إلى ملف .htaccess-initial .
                        • انسخ محتويات الملف إلى ملف نصي على جهاز الكمبيوتر الخاص بك.

                        إذا كانت لديك مشكلة ، يمكنك بسهولة استعادة المحتوى الأصلي.

                        كيفية تعديل ملف htaccess الخاص بك بشكل صحيح.

                        لإجراء أي تغييرات ، اتبع الإجراء أدناه:

                        • افتح الملف في محرر التعليمات البرمجية الخاص بك.
                        • ضع الإضافات الخاصة بك في الملف.
                        • احفظها.
                        • قم بتحديث موقع الويب الخاص بك لمعرفة ما إذا كان كل شيء على ما يرام.

                        يعد تحديث موقع الويب الخاص بك أمرًا مهمًا للغاية: سيساعد ذلك في معرفة ما إذا كانت هناك أية مشكلات تتعلق بالشفرة المضافة.

                        بشكل عام ، سيظهر خطأ 500 "خطأ داخلي في الخادم" على الشاشة ، إذا كانت هناك مشكلة:

                        500 مثال على خطأ خادم داخلي.

                        في هذه الحالة ، تراجع عن تغييراتك واحفظها مرة أخرى. كل شيء يجب أن يعود إلى طبيعته.

                        في بعض الأحيان ، لا يقبل بعض المضيفين رمزًا محددًا في ملف .htaccess ...

                        سيكون عليك التعامل معها.

                        اتصل بخدمة عملاء مضيفك لمعرفة المزيد. نأمل أن تحتاج فقط إلى تعديل طفيف لجعلها تعمل.

                        هل تواجه خطأ WordPress ، مثل الخطأ 500 النموذجي والواسع الانتشار؟ يقدم WPMarmite دليلًا شاملاً لحل المشكلات الرئيسية.

                        هذه المرة ، كل شيء على ما يرام. أنت تعرف كيف يعمل ملف .htaccess ، وكيفية إنشائه وتحريره بشكل صحيح.

                        اكتشف الآن كيفية تخصيصه في 5 أماكن مختلفة:

                        1. في جذر الموقع
                        2. في wp-admin
                        3. في wp-includes
                        4. في wp-content
                        5. في wp-content/uploads

                        لنبدأ على الفور بجذر الموقع. سترى ، ستكون هذه القطعة الأكثر تناسقًا.

                        كما هو الحال في كل لغة كمبيوتر ، يسمح لك ملف .htaccess بتضمين التعليقات. للقيام بذلك ، ما عليك سوى وضع الرمز # في بداية السطر بحيث يتم تجاهل الخط. هذا مفيد جدًا لتذكر أداء سطور التعليمات البرمجية. سترى التعليقات في الأمثلة الموجودة في هذه المقالة.

                        كيفية تخصيص ملف .htaccess على جذر موقع الويب؟

                        إذا سارت عملية التثبيت بشكل جيد ، فستجد ملف .htaccess في جذر موقع الويب الخاص بك. سيحتوي على الكود التالي:

                         # BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\. php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
                        ووردبريس الكود الافتراضي لملف htaccess

                        إذا كنت تستخدم WordPress في الوضع متعدد المواقع ، فسيكون الرمز الافتراضي لملف .htaccess مختلفًا. هذا لن يؤثر عليك في معظم الحالات.

                        الآن بعد أن حددت موقع هذا الملف ، ستتمكن من تحسين محتوياته باستخدام مقتطفات التعليمات البرمجية أدناه لإنجاز بعض الأشياء المحددة. يمكن أن يكون هذا متعلقًا بالأمان ، ولكن أيضًا بأمور أخرى.

                        تأكد من عدم تضمين أي كود بين التعليقات # BEGIN WordPress و # END WordPress حيث من الممكن أن يتم تعديل هذا الرمز في بعض الحالات.

                        تذكير آخر: احفظ ملف .htaccess الأصلي قبل إجراء أي تغييرات. يجب أن تكون قادرًا على العودة إذا كان لديك أي مشاكل.

                        تعطيل عرض الدلائل

                        بشكل افتراضي ، إذا حاولت الوصول إلى أدلة موقع الويب ، فسيعرضها الخادم. سيبدو التنسيق كما يلي:

                        فهرس / wp-include

                        يمكنك أن تتخيل أن هذا هو الخبز والزبدة للقراصنة. حقيقة أنه يمكنهم رؤية الملفات الموجودة على موقع الويب الخاص بك ستساعدهم على أن يكونوا قادرين على مهاجمتها بشكل أفضل. أدخل الكود التالي في ملف .htaccess الخاص بك لحماية موقع الويب الخاص بك:

                         # Disable display of directory contents Options All -Indexes

                        من الممكن أيضًا استخدام هذا الرمز لمنع سرد الدليل:

                         # Alternative to prevent directory listing IndexIgnore *

                        إخفاء معلومات الخادم

                        مع بعض موفري الاستضافة ، قد تحتوي الصفحات المعروضة على معلومات الخادم. يمكن أن تعطي هذه المعلومات تفاصيل للمهاجمين المحتملين.

                        لذلك من الأفضل إخفاؤها بالشفرة التالية:

                         # Hide the information from server ServerSignature Off

                        تفعيل الروابط الرمزية التالية

                        يجب أن أتحدث إليك بكلمات رطانة كاملة ، ولكن من المهم إدراج هذا السطر من التعليمات البرمجية في ملف .htaccess الرئيسي الخاص بك:

                         # Enable following symbolic links Options +FollowSymLinks

                        سيسمح هذا لخادمك باتباع ما يسمى الروابط الرمزية ، أي الرموز القصيرة.

                        اضبط الخادم الخاص بك على الوقت الصحيح

                        هذا ليس مهمًا حقًا ، ولكن إذا كان خادمك بالخارج ، فيمكنك إخباره بالتعيين على منطقتك الزمنية باستخدام هذا السطر من التعليمات البرمجية:

                         # Choose time zone SetEnv TZ America/New_York

                        تعيين ترميز الأحرف الافتراضي

                        يسمح لك الكود التالي بتعيين ترميز الأحرف للملفات النصية وملفات HTML كـ UTF-8 (ترميز أحرف الكمبيوتر). بدون هذا ، هناك خطر من أن اللهجات سوف يساء فهمها.

                         # Default encoding of text and HTML files AddDefaultCharset UTF-8

                        حماية ملف wp-config.php

                        يحتوي ملف التكوين لموقع الويب الخاص بك ( wp-config.php ) على بيانات الاعتماد للاتصال بقاعدة البيانات.

                        هذا هو الملف الأكثر حساسية على موقع الويب الخاص بك. يمكن أن يكون هدفًا للمتسللين المحتملين. يمكن حمايته بإضافة هذا الرمز إلى ملف .htaccess الرئيسي:

                         # Protect the wp-config.php file <files wp-config.php> order allow,deny deny from all </files>

                        حماية ملف htaccess نفسه

                        مثل wp-config.php ، يجب حماية ملف .htaccess إلى أقصى حد. للقيام بذلك ، أدخل هذا الرمز:

                         # Protect .htaccess and .htpasswds files <Files ~ "^.*\.([Hh][Tt][AaPp])"> order allow,deny deny from all satisfy all </Files>

                        الحد من التعليقات غير المرغوب فيها

                        أنت تعرف ذلك تمامًا كما أفعل إذا كان لديك مدونة ، فإن التعليقات غير المرغوب فيها هي ألم حقيقي.

                        لحسن الحظ ، هناك حيلة لمنع هذا مباشرة في ملف .htaccess . هذا ليس حلًا سريعًا ، ولكن ، جنبًا إلى جنب مع المكون الإضافي Akismet ، يجب تصفية غالبية البريد العشوائي.

                         # Avoid comment spam <IfModule mod_rewrite.c> RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post\.php* RewriteCond %{HTTP_REFERER} !.mywebsite.com.* [OR] RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L] </IfModule>

                        لا تنس استبدال mywebsite.com باسم المجال الخاص بك.

                        انضم إلى مشتركي WPMarmite

                        احصل على آخر منشورات WPMarmite (وكذلك الموارد الحصرية).

                        إشترك الآن
                        نشرة WPMarmite الإنجليزية

                        تجنب الكشف عن هوية المؤلف

                        حتى إذا كنت تستخدم تسجيل دخول مستخدم معقدًا ، فلا يزال من الممكن اكتشافه.

                        بالطبع ، أفترض أنك لا تعرضه بالفعل علنًا مع موضوعك (يمكن أن يحدث).

                        حاول كتابة mywebsite.com/?author=x مع استبدال x بـ 1 للمسؤول أو معرّف أحد مؤلفيك. إذا لم تكن محميًا ، فستتم إعادة توجيهك إلى صفحة مثل mywebsite.com/author/author_id .

                        هكذا تجد معرف المستخدم في ثانيتين. من هناك ، كل ما تبقى هو محاولة تخمين كلمة المرور الخاصة بك.

                        لحماية نفسك من هذه التقنية ، استخدم الكود التالي:

                         # Prevent the detection of an author's ID <IfModule mod_rewrite.c> RewriteCond %{QUERY_STRING} ^author=([0-9]*) RewriteRule .* - [F] </IfModule>

                        تعطيل الربط الساخن للصور الخاصة بك

                        ما هو الرابط الساخن على الأرض؟ لا تقلق ، سأشرح كل شيء.

                        بشكل أساسي ، بمجرد إضافة الصور إلى موقع الويب الخاص بك (على سبيل المثال في مقال) ، يمكن لأي شخص نسخ عنوان URL لإحدى صورك وعرضها على موقع الويب الخاص به.

                        قد تعتقد أن هذا ليس سيئًا للغاية ، ولكن إذا قام موقع ويب متابع للغاية ، لسبب ما ، بالتقاط صورتك وعرضها على إحدى صفحاته ، فسيتم تقديم الطلبات إلى الخادم الخاص بك.

                        Hotlinking هو في الواقع سرقة النطاق الترددي . إذا تم تثبيت موقع الويب الخاص بك على خادم مشترك صغير ، فقد لا يقدره مضيفك لأن الموارد محدودة.

                        لتجنب المشكلة ، أدخل هذا الرمز وخصصه في ملف .htaccess الخاص بك:

                         # Disable hotlinking of your images RewriteEngine On RewriteCond %{HTTP_REFER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mywebsite.com [NC] RewriteRule \.(jpg|jpeg|png|gif)$ http://fakeimg.pl/400x200/?text=Do_not_touch_the_images [NC,R,L]
                        استبدل mywebsite.com باسم المجال الخاص بك

                        للسماح لبعض مواقع الويب بعرض صورك ، استخدم الكود التالي:

                         # Disable hotlinking of your images RewriteEngine On RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mywebsite.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mywebsite2.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mywebsite3.com [NC] RewriteRule \.(jpg|jpeg|png|gif)$ http://fakeimg.pl/400x200/?text=Do_not_touch_the_images [NC,R,L]
                        استبدل mywebsite.com و mywebsite2.com و mywebsite3.com بالمجالات التي تختارها

                        يمكنك أيضًا تخصيص الصورة التي سيتم عرضها بدلاً من الصورة المطلوبة. لقد أضفت شيئًا بسيطًا ، لكن يمكنك أن تكون أكثر إبداعًا.

                        حظر عناوين IP

                        إذا لاحظت أن بعض عناوين IP تحاول تسجيل الدخول إلى إدارة موقع الويب الخاص بك كثيرًا جدًا (على سبيل المثال مع المكون الإضافي Login Lockdown) ، فيمكنك التخلص منها عن طريق حظر عنوان IP الخاص بها.

                        لديك أيضًا إمكانية استرداد عناوين IP لمرسلي التعليقات المزعجة لحظرهم من موقع الويب الخاص بك.

                        هذا الحل ليس دائمًا لأن المهاجم قد يغير عنوان IP ، ولكنه قد يعمل ضد الأفراد الأقل مهارة.

                         # Ban an IP address <Limit GET POST> order allow,deny deny from xxx.xxx.xxx.xxx allow from all </Limit>
                        استبدل xxx.xxx.xxx.xxx بعنوان IP الذي تريد حظره

                        منع الزوار من بعض المواقع

                        إذا أدركت أن أحد مواقع الويب غير المتوافقة قد ارتبط بموقعك ، ولا تريد أن يتمكن الزوار من هذا الموقع من الوصول إلى موقع الويب الخاص بك ، فاستخدم هذا الرمز:

                         # Prevent visitors to these sites from accessing yours <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_REFERER} mywebsite1.com [NC,OR] RewriteCond %{HTTP_REFERER} mywebsite2.com [NC,OR] RewriteRule .* - [F] </ifModule>
                        استبدل mywebsite1.com و mywebsite2.com بالمواقع التي تختارها

                        إعادة توجيه الزوار من موقع إلى آخر

                        لأخذ النصيحة السابقة خطوة إلى الأمام ، يمكنك إعادة توجيه الزوار من مواقع ويب معينة إلى موقع ويب آخر.

                        إليك الكود المطلوب استخدامه:

                         # Redirect visitors from one site to another RewriteEngine on RewriteCond %{HTTP_REFERER} sourcewebsite\.com/ RewriteRule ^(.*)$ http://www.destinationwebsite.com [R=301,L]
                        استبدل مواقع المصدر والوجهة بتلك التي تختارها

                        إنشاء عمليات إعادة التوجيه

                        يتيح لك ملف .htaccess إجراء عمليات إعادة توجيه (إعادة توجيه عنوان URL أ إلى عنوان URL ب).

                        يعد هذا مفيدًا لإعادة توجيه بضع صفحات ، ولكن إذا كنت ترغب في إنشاء الكثير من عمليات إعادة التوجيه ، فإنني أوصي بإضافة WordPress Redirection ، الذي قدمته في هذه المقالة.

                        كيفية إنشاء عمليات إعادة التوجيه في ملف .htaccess :

                         # Redirection of any page Redirect 301 /oldpage/ http://www.mywebsite.com/newpage # Redirection of a new category (with renaming from category to topic) Redirect 301 /category/technology/ http://www.mywebsite.com/topic/techno/

                        إعادة توجيه العنوان بدون www إلى عنوان واحد مع www

                        عند إعداد موقع ويب ، فإن أحد الإجراءات التي يجب إنجازها أولاً هو إعادة توجيه موقع الويب بدون www إلى الإصدار الذي يحتوي على www (أو العكس).

                        إذا أجريت الاختبار في المرة التالية التي تنشئ فيها موقعًا على الويب ، فستجد أن العنوانين لا يرتبطان بالضرورة بموقعك على الويب.

                        في بعض الحالات ، ستتولى شركة الاستضافة هذا الأمر تلقائيًا ، أو يجب تنشيطه عبر صفحة المسؤول على موقع الاستضافة (هذا هو الحال مع Gandi ، على سبيل المثال).

                        إذا كنت بحاجة إلى القيام بإعادة التوجيه يدويًا ، فاستخدم الكود التالي عن طريق استبدال mywebsite.com بموقعك على الويب:

                         # Redirection of site without www to www RewriteEngine On RewriteCond %{HTTP_HOST} ^mywebsite. com [NC] RewriteRule ^(.*)$ http://www.mywebsite.com/$1 [L,R=301]
                        استبدل mywebsite.com باسم المجال الخاص بك

                        إعادة توجيه العنوان مع www إلى عنوان بدون www

                        من ناحية أخرى ، إذا كنت لا تريد ظهور www أمام اسم موقع الويب الخاص بك (كما هو الحال مع WPMarmite) ، فمن الممكن إعادة التوجيه إلى الإصدار بدون www .

                        أدخل الكود التالي في ملف .htaccess :

                        تحذير : لا تستخدم هذا الرمز مع الرمز السابق وإلا سيعاني موقع الويب الخاص بك من حلقة إعادة توجيه (حيث أن الإصدار الذي لا يحتوي على www سيعيد التوجيه إلى الإصدار الذي يحتوي على www والذي سيعيد التوجيه إلى الإصدار بدون www وما إلى ذلك).

                        إعادة التوجيه إلى HTTPS

                        إذا قمت بإعداد شهادة SSL على موقع الويب الخاص بك لتحويلها إلى HTTPS ، فأنت بحاجة إلى التأكد من أن جميع زوار موقعك يتصفحون الإصدار الآمن من موقع الويب الخاص بك.

                        إذا لم يكن الأمر كذلك ، فيمكن للقراصنة استعادة المعلومات الحساسة (البيانات الشخصية أو المصرفية ، على سبيل المثال).

                        استخدم الكود التالي لتحويل موقع الويب الخاص بك بالكامل إلى HTTPS:

                         # Redirection to HTTPS RewriteCond %{SERVER_PORT} ^80$ RewriteRule ^(. *)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

                        فرض تنزيل ملفات معينة

                        عندما تريد تنزيل ملف من موقع ويب ، يحاول المستعرض الخاص بك أحيانًا فتحه لعرضه.

                        أنا شخصياً أجد هذا مناسبًا لملفات PDF. من ناحية أخرى ، فإنه غير سارة لأنواع أخرى من الملفات.

                        أدخل الكود التالي لجعل زوارك ينزلون الملفات بهذه الإضافات مباشرة (قم بتعديلها كما تريد):

                         # Force download for these file types AddType application/octet-stream .doc .docx .xls .xlsx .csv .mp3 .mp4

                        قم بإنشاء صفحة صيانة مخصصة

                        في مقال سابق ، اكتشفت مجموعة مختارة من مكونات الصيانة الإضافية. ومع ذلك ، هناك حالات يتعذر فيها عرض صفحة الصيانة.

                        هذا مزعج ، أليس كذلك؟

                        للحصول على صفحة صيانة ، يمكنك استخدام الكود التالي:

                         # Maintenance page RewriteEngine on RewriteCond %{REQUEST_URI} ! /maintenance.html$ RewriteCond %{REMOTE_ADDR} !^xxx\.xxx\.xxx\.xxx RewriteRule $ /maintenance.html [R=302,L]

                        لكي يعمل هذا ، تحتاج إلى:

                        • قم بإنشاء ملف Maintenance.html بمحتوى يشير إلى أن موقع الويب تحت maintenance.html .
                        • أضف عنوان IP الخاص بك في السطر 4 (مع التأكد من الاحتفاظ بـ " \ ") للسماح لك بالوصول إلى موقع الويب (تعرف على عنوان IP الخاص بك على هذا الموقع).

                        عند اكتمال الصيانة ، ضع " # " أمام كل سطر لتمريرها كتعليق.

                        تمكين التخزين المؤقت

                        يسمح لك ملف .htaccess بتخزين ملفات معينة على موقع الويب الخاص بك في متصفح الزائر الخاص بك بحيث يتم تحميلها بشكل أسرع.

                        في الواقع ، لن يحتاج المتصفح إلى إعادة تنزيل الملفات الموجودة في ذاكرة التخزين المؤقت الخاصة به.

                        للقيام بذلك ، أدخل الكود التالي:

                         # Caching of files in the browser <IfModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 1 month" ExpiresByType text/html "access plus 0 seconds" ExpiresByType text/xml "access plus 0 seconds" ExpiresByType application/xml "access plus 0 seconds" ExpiresByType application/json "access plus 0 seconds" ExpiresByType application/pdf "access plus 0 seconds" ExpiresByType application/rss+xml "access plus 1 hour" ExpiresByType application/atom+xml "access plus 1 hour" ExpiresByType application/x-font-ttf "access plus 1 month" ExpiresByType font/opentype "access plus 1 month" ExpiresByType application/x-font-woff "access plus 1 month" ExpiresByType application/x-font-woff2 "access plus 1 month" ExpiresByType image/svg+xml "access plus 1 month" ExpiresByType application/vnd.ms-fontobject "access plus 1 month" ExpiresByType image/jpg "access plus 1 month" ExpiresByType image/jpeg "access plus 1 month" ExpiresByType image/gif "access plus 1 month" ExpiresByType image/png "access plus 1 month" ExpiresByType video/ogg "access plus 1 month" ExpiresByType audio/ogg "access plus 1 month" ExpiresByType video/mp4 "access plus 1 month" ExpiresByType video/webm "access plus 1 month" ExpiresByType text/css "access plus 6 month" ExpiresByType application/javascript "access plus 6 month" ExpiresByType application/x-shockwave-flash "access plus 1 week" ExpiresByType image/x-icon "access plus 1 week" </IfModule> # Headers Header unset ETag FileETag None <ifModule mod_headers.c> <filesMatch "\.(ico|jpe?g|png|gif|swf)$"> Header set Cache-Control "public" </filesMatch> <filesMatch "\.(css)$"> Header set Cache-Control "public" </filesMatch> <filesMatch "\.(js)$"> Header set Cache-Control "private" </filesMatch> <filesMatch "\.(x?html?|php)$"> Header set Cache-Control "private, must-revalidate" </filesMatch> </ifModule>

                        سيكون التخزين المؤقت للملفات ساريًا للمدة المحددة لكل نوع ملف أو حتى يمسح الزائر ذاكرة التخزين المؤقت الخاصة به.

                        لتسريع موقع الويب الخاص بك من خلال التخزين المؤقت ، أوصي باستخدام المكون الإضافي WP Rocket المميز (رابط تابع). نظرًا لأنه بسيط وسريع الإعداد ، فهو مثالي للمبتدئين على WordPress. بمساعدتها ، لن تحتاج إلى استخدام المقتطف (جزء من الكود) المعروض أعلاه.

                        قم بتسريع موقع الويب الخاص بك باستخدام WP Rocket

                        حوّل موقعك إلى صاروخ باستخدام أقوى مكون إضافي للتخزين المؤقت يتعرف عليه خبراء WordPress.
                        جرب WP Rocket
                        شعار WP Rocket

                        تمكين ضغط

                        بالإضافة إلى كل ما رأيناه حتى الآن ، من الممكن ضغط بعض الموارد قبل نقلها من الخادم إلى المتصفح.

                        وضغط الملفات يعني سرعة تحميل أسرع للصفحة. لذلك أوصيك بتطبيق هذا الكود لزيادة سرعة موقع الويب الخاص بك:

                         # Compression of static files <IfModule mod_deflate. c> AddOutputFilterByType DEFLATE text/xhtml text/html text/plain text/xml text/javascript application/x- javascript text/css BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\. 0 [678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html SetEnvIfNoCase Request_URI \. (?:gif|jpe?g|png)$ no-gzip dont-vary Header append Vary User-Agent env=! dont- vary </IfModule> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE font/opentype AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/json

                        تعطيل الوصول إلى نصوص معينة

                        للعمل ، يستخدم WordPress البرامج النصية الموجودة في دليل wp-includes . ومع ذلك ، لا يوجد سبب للوصول إليها مباشرة. استخدم هذا الرمز لتقييد الوصول:

                         # Block the use of certain scripts RewriteEngine On RewriteBase / RewriteRule ^wp- admin/includes/ - [F,L] RewriteRule ! ^wp-includes/ - [S=3] RewriteRule ^wp-includes/[^/]+\.php$ - [F,L] RewriteRule ^wp-includes/js/tinymce/langs/. +\.php - [F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L]

                        الحماية من حقن الملفات

                        قد يحاول المتسللون إرسال ملفات إلى خادمك للتحكم في موقع الويب الخاص بك. لإلقاء مفتاح ربط في مسارهم ، يمكنك تضمين هذا الرمز في ملف .htaccess الخاص بك:

                         # Protection against file injections RewriteCond %{REQUEST_METHOD} GET RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR] RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR] RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC] RewriteRule .* - [F]

                        الحماية من التهديدات الأخرى

                        على Facebook ، أخبرني ريتشارد أنه من الممكن الحماية من النقر فوق النقر والتهديدات الأخرى عن طريق إضافة بضعة أسطر في ملف .htaccess .

                        لمعلوماتك ، يعد النقر فوق الاختراق أسلوبًا يساعد في جعل الزائر يعتقد أنه موجود على موقع الويب الخاص بك ، عندما لا يكون كذلك ، باستخدام علامات frame أو iframe .

                        لذا فإن الكود التالي يساعد في حمايتك من الاختراق ، ويحارب التهديدات الأخرى مثل MIME Sniffing ، ويحظر المحتوى في حالة هجوم XSS (والذي سيضخ HTML أو JavaScript في متغيرات غير محمية بشكل جيد).

                         # Various protections (XSS, clickjacking and MIME-Type sniffing) <ifModule mod_headers.c> Header set X-XSS-Protection "1; mode=block" Header always append X-Frame-Options SAMEORIGIN Header set X-Content-Type-Options: "nosniff” </ifModule>

                        وهذا كل شيء ، لقد مررت للتو بمجموعة كاملة من التحسينات لدمجها في ملف .htaccess الموجود في جذر موقع الويب.

                        دعنا ننتقل إلى: أجزاء جديدة من التعليمات البرمجية لمجلدات wp-admin و wp-icludes و wp-content و wp-content/uploads .

                        كيفية تخصيص ملف htaccess في wp-admin

                        wp-admin هو عرين موقع الويب الخاص بك. المكان الذي تذهب إليه لكتابة المقالات وتكوين قوائمك وإعداد السمة الخاصة بك وغير ذلك الكثير.

                        وغني عن القول أنه لا ينبغي لأي شخص غير مصرح له دخول هذا الملاذ. خلاف ذلك ، احذر من العواقب.

                        إليك ما يمكنك القيام به لتعزيز الأمان باستخدام ملف .htaccess الذي تضعه في مجلد wp-admin في موقع الويب الخاص بك.

                        تقييد الوصول إلى إدارة الموقع

                        لن يتمكن سوى الأشخاص الذين لديهم عناوين IP المدرجة من الوصول إلى مجلد wp-admin . مفيد جدًا لمنع الغرباء من تسجيل الدخول إلى موقع الويب الخاص بك (حتى لو كان لديهم كلمة المرور الصحيحة).

                         <Limit GET POST PUT> order deny,allow deny from all # Alex's IP allow from xxx.xxx.xxx.xxx # Nico's IP allow from xxx.xxx.xxx.xxx # IP of another access point allow from xxx.xxx.xxx.xxx </Limit>

                        أضف مصادقة ثانية

                        عند تسجيل الدخول إلى مسؤول موقع WordPress على الويب ، فإنك تستخدم اسم المستخدم وكلمة المرور. حسنًا ، من الممكن إضافة ملف ثانٍ من خلال ملف .htaccess وملف آخر.

                        أولاً ، أنشئ ملفًا باسم .htpasswd في دليل wp-admin ، وأدخل اسم مستخدم وكلمة مرور الزوجين فيه. استخدم هذا الموقع لإرشادك:

                        واجهة أداة HTPasswd Generator.

                        أدخل اسم المستخدم الذي تريد استخدامه في الحقل الأول ، وكلمة المرور في الحقل الثاني ، ثم انقر فوق "إنشاء ملف .htpasswd ".

                        ثم انسخ السطر الذي سيظهر في ملف .htpasswd . إذا كنت بحاجة إلى إنشاء عدة مستخدمين ، كرر العملية وأضف زوج اسم المستخدم / كلمة المرور الجديد في سطر جديد.

                        على سبيل المثال ، يمكنك الحصول على هذا النوع من الملفات:

                         alex:ieS547B1UxY8M jack:rSqEJf0SeTlRs
                        محتوى وهمي لملف .htpasswd

                        بعد ذلك ، أدخل الكود التالي في ملف .htaccess :

                         # Second authentication for administration <Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files> AuthName "Login to the administration" AuthType Basic AuthUserFile "/full/path/to/the/file/.htpasswd" Require valid-user

                        الجزء الصعب من هذه العملية هو الحصول على المسار الكامل لملف .htpasswd الصحيح. للعثور عليه بالتأكيد ، قم بإنشاء ملف info.php وأدخل الكود التالي:

                         <?php echo "Path to copy: " . realpath('.htaccess'); ?>
                        ضع ملف info.php في wp-admin

                        انتقل إلى yourwebsite.com/wp-admin/info.php وستحصل على المسار الفعلي لملف .htpasswd ليتم وضعه في ملف .htaccess . احذف ملف info.php بمجرد حصولك على المسار الصحيح.

                        إذا أدخلت هذا الرمز كما هو ، فلن تعمل طلبات AJAX بعد الآن. استخدم المقتطف أدناه لإصلاح المشكلة :

                         AuthType Basic AuthName "Protected page" AuthUserFile /home/.htpasswd Require valid-user <Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files> <Files admin-post.php> Order allow,deny Allow from all Satisfy any </Files> <Files "\.(css|gif|png|js)$"> Order allow,deny Allow from all Satisfy any </Files>
                        ضع ملف info.php في wp-admin

                        إذا فهمت كل ما ذكرته للتو ، فيجب أن يكون لديك مصادقة مزدوجة للوصول إلى إدارة WordPress.

                        دعنا ننتقل إلى الجزء التالي.

                        كيفية تخصيص ملف htaccess في wp-include؟

                        حظر الوصول المباشر إلى ملفات PHP

                        أنشئ ملف .htaccess في wp-includes ، والصق الكود التالي فيه لمنع تحميل ملفات PHP مباشرةً.

                         # Blocks direct access to PHP files (Thanks to Sucuri) <Files wp-tinymce.php> allow from all </Files> <FilesMatch "\.(?i:php)$"> <IfModule !mod_authz_core.c> Order allow,deny Deny from all </IfModule> <IfModule mod_authz_core.c> Require all denied </IfModule> </FilesMatch> <Files wp-tinymce.php> Allow from all </Files> <Files ms-files.php> Allow from all </Files>

                        يتم توفير الكود أعلاه بواسطة البرنامج المساعد Sucuri.

                        كيفية تخصيص ملف htaccess في محتوى wp؟

                        حظر الوصول المباشر إلى ملفات PHP

                        بالنسبة لمجلد wp-content ، فإن الكود مشابه ، حيث تمت إزالة الاستثناءات فقط:

                         # Blocks direct access to PHP files (Thanks to Sucuri) <FilesMatch "\.(?i:php)$"> <IfModule !mod_authz_core.c> Order allow,deny Deny from all </IfModule> <IfModule mod_authz_core.c> Require all denied </IfModule> </FilesMatch>

                        كيفية تخصيص ملف htaccess في wp-content / uploads؟

                        حظر الوصول المباشر إلى ملفات PHP

                        باستخدام نفس الكود ، قم بحماية المجلد حيث يتم تخزين الوسائط لمنع تنفيذ ملفات PHP بواسطة شخص من الخارج (مخترق شرير على سبيل المثال).

                         # Blocks direct access to PHP files (Thanks to Sucuri) <FilesMatch "\. (?i:php)$"> <IfModule ! mod_authz_core.c> Order allow,deny Deny from all </IfModule> <IfModule mod_authz_core. c> Require all denied </IfModule> </FilesMatch>

                        الملخص النهائي لملف .htacess في WordPress

                        كما اكتشفت في هذا الدليل ، يعد ملف .htaccess أداة قوية جدًا لتكوين خادم موقع الويب الخاص بك.

                        عند التعامل معه بحذر وحذر ، يمكن أن يحسن أمان موقع الويب الخاص بك أو أدائه أو تحسين محركات البحث أو حتى تجربة المستخدم.

                        يعد ملف #htaccess لموقعك على #WordPress أداة فعالة. اكتشف كيف يعمل وقم بإعداده مثل طاهٍ مع نصائح WPMarmite.

                        انقر للتغريد

                        مرة أخرى ، أوصي بأن تحتفظ دائمًا بنسخة احتياطية من ملف .htaccess الأصلي الخاص بك لإجراء إعادة تعيين في حالة وجود أي مشاكل.

                        تابع تغييراتك بحذر شديد (سأكون قد حذرتك!). قد تحدث أخطاء أو عدم توافق بناءً على مضيف موقع الويب الخاص بك.

                        على الرغم من أن هذه المقالة قد تم تناولها قليلاً ، إلا أنه من الممكن المضي قدمًا في إعداد .htaccess الخاص بك ، باستخدام موارد مختلفة:

                        • وثائق WordPress ووثائق Apache (البرنامج الذي يدير الخادم الخاص بك).
                        • مدونة Perishable Press ، التي تحتوي حتى على كتاب مدفوع حول هذا الموضوع.

                        قبل أن أقول وداعًا ، أود الحصول على مساهمتك في التعليقات. هل قمت بتخصيص ملف .htaccess الخاص بك؟

                        والأهم من ذلك ، لا تتردد في مشاركة أي مقتطفات من التعليمات البرمجية اعتدت على استخدامها مع القراء الآخرين.