# فهم ملف .htaccess في KapsuleHost

Source: https://support.kapsulehost.com/ar-ae/wordpress-htaccess

تقدم KapsuleHost كل موقع ويب عبر خادم ويب عالي الأداء لا يقرأ `.htaccess`، لذا فإن القواعد التي تضيفها إلى ذلك الملف ليس لها أي تأثير: يشرح هذا الدليل ما يعنيه ذلك بالنسبة لموقع WordPress ويوضح إعداد KPanel الذي يؤدي كل مهمة بدلاً منه.

إذا كنت قد انتقلت من استضافة cPanel مشتركة، فمن المرجح أن `.htaccess` كان المكان الذي تضع فيه عمليات إعادة التوجيه، وفرض HTTPS، وصفحات الخطأ المخصصة، وحظر الروبوتات. كل هذه الأمور لا تزال تعمل على KapsuleHost. يتم ضبطها ببساطة في KPanel بدلاً من ملف نصي، ولأنها تُطبّق على مستوى الخادم فهي أسرع ولا يمكن أن تُعطّل موقعك بسبب خطأ إملائي بسيط.

## لماذا لا يفعل .htaccess شيئًا هنا

`.htaccess` هو ملف إعداد لكل دليل على حدة خاص بخادم ويب Apache. يعيد Apache قراءته مع كل طلب على حدة، وهذا ما يجعله مريحًا وما يجعله بطيئًا أيضًا.

لا تُشغّل KapsuleHost خادم Apache. يُقدَّم موقعك عبر خادم ويب قائم على الأحداث يُحمّل إعداداته مرة واحدة فقط عند بدء التشغيل، وهذا جزء كبير من سبب استجابة المواقع هنا بشكل أسرع تحت الحمل. ذلك الخادم ليس لديه ما يعادل ملف التجاوز لكل دليل، لذا فهو لا يفتح `.htaccess` أبدًا.

> **Warning:** إضافة قواعد إلى `.htaccess` على موقع KapsuleHost تفشل بصمت. لا تظهر أي أخطاء، ولا تحذيرات، ويبقى الملف تمامًا كما تركته. القواعد ببساطة لا تعمل أبدًا. إذا كنت تتبع درس WordPress يقول "أضف هذا إلى ملف htaccess الخاص بك"، فابحث بدلاً من ذلك عن المكافئ في KPanel في الجدول أدناه.

الخبر السار هو عكس قصة الرعب المعتادة بخصوص `.htaccess`: خطأ في صياغة الملف لا يمكن أن يُسقط موقعك هنا، لأنه لا يوجد شيء يحلّله.

## ما الذي لا يزال يعمل بدونه

**الروابط الدائمة (Permalinks).** السبب الأكثر شيوعًا لحاجة موقع WordPress إلى `.htaccess` على Apache هو الروابط الدائمة الجميلة. على KapsuleHost، إعادة الكتابة مدمجة في إعداد خادم موقعك، لذا فإن `/2026/07/my-post/` يُحلّ عبر WordPress دون الحاجة إلى أي كتلة `.htaccess` على الإطلاق. إذا كانت الروابط الدائمة تُرجع أخطاء 404، فالسبب شيء آخر: راجع [إصلاح مشكلات الروابط الدائمة في WordPress](https://support.kapsulehost.com/ar-ae/wordpress-permalink-issues).

**كتابة WordPress إلى الملف.** لا يزال WordPress وبعض الإضافات يكتبون كتل `# BEGIN`/`# END` في `.htaccess` لأنها تفترض وجود Apache. هذا غير ضار. الملف حقيقي، وقابل للكتابة، وستراه في مدير الملفات. ببساطة لا يوجد من يقرأه.

**إضافات الأمان التي تُبلّغ بأن "التحصين قد تم تطبيقه".** الإضافات التي تدّعي أنها أحكمت `xmlrpc.php` أو `wp-config.php` من خلال تعديل `.htaccess` لم تحمِ في الواقع أي شيء على هذه المنصة. استخدم تبويب **الأمان** الخاص بالموقع نفسه، والذي يُطبّق القواعد المكافئة على مستوى الخادم.

## مكافئات KPanel لقواعد .htaccess الشائعة

كل واحدة من هذه موجودة في الموقع نفسه: **المواقع**، ثم موقعك، ثم التبويب الموضّح.

| ما كنت ستكتبه في .htaccess | أين يوجد في KPanel |
|---|---|
| `RewriteCond %{HTTPS} off` لفرض HTTPS | **الإعدادات**، ثم **فرض HTTPS** ضمن السلوك |
| `Redirect 301 /old /new` | **الإعدادات**، ثم **عمليات إعادة التوجيه** |
| `ErrorDocument 404 /404.html` | **الإعدادات**، ثم **صفحات الخطأ** |
| `AuthType Basic` لحماية مجلد بكلمة مرور | **الإعدادات**، ثم **حماية كلمة المرور** |
| `Require not ip 203.0.113.4` لحظر عنوان | **WordPress**، ثم **الأمان** |
| `RewriteCond %{HTTP_USER_AGENT} (BadBot)` لحظر الزواحف | **الأداء**، ثم **الزواحف** |
| `DirectoryIndex index.php index.html` | **الإعدادات**، ثم **فهرس الدليل** ضمن التقديم |
| `mod_deflate` / `mod_expires` للضغط والتخزين المؤقت | مُفعّلة بالفعل. يتم ضبط رؤوس الضغط والتخزين المؤقت على مستوى الخادم |

اثنان من هذه يفعلان أكثر مما كان بإمكان نسخة `.htaccess` أن تفعله على الإطلاق. تدعم عمليات إعادة التوجيه المسارات الدقيقة، وبادئات الشرطة المائلة اللاحقة، والرموز العامة مثل `/blog/*`، ويتحقق KPanel من إعادة التوجيه مباشرةً بعد حفظك له. تُقدَّم صفحات الخطأ برمز حالتها الحقيقي، لذا فإن صفحة 404 مخصصة تظل فعليًا 404 حقيقية بالنسبة لمحركات البحث بدلاً من أن تكون 200 مع اعتذار مكتوب عليها.

![صفحة إعادة التوجيه لموقع في KPanel، حيث يُطبّق خادم الويب عمليات إعادة التوجيه](https://support.kapsulehost.com/help/screenshots/wordpress-htaccess.1030a8b1.webp)

## إيجاد الملف وقراءته

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

### من تبويب WordPress

1. سجّل الدخول إلى [KPanel](https://kpanel.kapsulehost.com) وانقر على **المواقع** في الشريط الجانبي الأيسر.
2. انقر على الموقع الذي تريده.
3. افتح تبويب **WordPress**، ثم قسم **wp-config**.
4. انتقل إلى لوحة `.htaccess`. تُعرض المحتويات للقراءة فقط، مع زر **تعديل** إذا احتجت إلى تغييرها.

### من مدير الملفات

1. افتح الموقع، ثم **الإعدادات**، ثم **مدير الملفات**.
2. انقر على **عرض المخفية** في شريط الأدوات. الملفات التي تبدأ بنقطة مخفية افتراضيًا، لذا لن يظهر `.htaccess` حتى تقوم بذلك.
3. انقر على `.htaccess` لفتحه في المحرر المدمج.

يقع الملف في جذر موقعك، بجانب `wp-config.php` و`wp-content`. التفاصيل الكاملة حول المحرر وضوابط الأذونات الخاصة به موجودة في [استخدام مدير الملفات](https://support.kapsulehost.com/ar-ae/file-manager).

> **Tip:** خذ نسخة احتياطية قبل تعديل أي شيء في جذر الموقع، حتى لو كان ملفًا لا يُقرأ. لا يُكلّفك ذلك شيئًا، ويعني أن نقرة واحدة تُعيدك إلى الوضع السابق. راجع [أخذ نسخة احتياطية](https://support.kapsulehost.com/ar-ae/taking-a-backup).

## كتلة WordPress الافتراضية

للمرجعية، هذه هي الكتلة التي يكتبها WordPress لنفسه. على مضيف Apache، تُشغّل هذه الكتلة الروابط الدائمة. على KapsuleHost، هي خاملة، وحذفها لن يُعطّل أي شيء:

```apache
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
```

اتركها في مكانها إذا كنت قد تنقل الموقع لاحقًا إلى مضيف Apache. سيُعيد WordPress كتابتها على أي حال في المرة القادمة التي تحفظ فيها إعدادات الروابط الدائمة.

## إذا كنت تنقل قواعد إلى هنا

عند نقل موقع من cPanel، افتح ملف `.htaccess` القديم قبل إلغاء الاستضافة القديمة واعمل عليه سطرًا سطرًا:

1. **عمليات إعادة التوجيه.** أعد إنشاء كل `Redirect` أو `RewriteRule` في **الإعدادات**، ثم **عمليات إعادة التوجيه**. صف واحد لكل قاعدة. اختر 301 للانتقال الدائم، و302 إذا كان التغيير قد يُعكس.
2. **فرض HTTPS.** احذفه. وفعّل بدلاً منه **فرض HTTPS** في **إعدادات** الموقع.
3. **حظر عناوين IP.** أعد إنشاءها في **WordPress**، ثم **الأمان**، في لوحة حظر عناوين IP.
4. **رؤوس التخزين المؤقت والضغط.** احذفها. يتم التعامل معها نيابة عنك، وقواعد `mod_expires` القديمة المتبقية من مضيف سابق مصدر شائع لسلوك تخزين مؤقت مُربك.
5. **أي شيء كتبته إضافة.** تجاهله. أعد تثبيت الإضافة على الموقع الجديد ودعها تقوم بعملها الخاص.

تحتفظ عملية النقل بالملف نفسه، لذا لا يُفقد شيء أثناء عملك على هذه القائمة. شرح كامل للنقل: [نقل موقع ويب من cPanel](https://support.kapsulehost.com/ar-ae/sites-migrate-cpanel).

## استكشاف الأخطاء وإصلاحها

**"أضفت إعادة توجيه إلى .htaccess ولم يحدث شيء."** هذا متوقع. أضفه في **الإعدادات**، ثم **عمليات إعادة التوجيه**. يُخبرك عمود الحالة هناك ما إذا كان قد تم التحقق من إعادة التوجيه مباشرةً.

**"إضافة تقول إن موقعي محصّن لكن أداة فحص تخالفها."** كتبت الإضافة قواعد `.htaccess` لا تُقرأ. تحقق من تبويب **الأمان** الخاص بالموقع للاطلاع على الحمايات المُطبّقة فعليًا.

**"ملف .htaccess الخاص بمضيفي القديم كان يحتوي على قواعد لا أفهمها."** لا تنسخها دون فهم. افتح تذكرة دعم مع إرفاق الملف وسنُخبرك أيها له مكافئ في KapsuleHost وأيها كان فقط للتعويض عن مضيف Apache مشترك.

**"الروابط الدائمة معطّلة."** هذه ليست مشكلة `.htaccess` هنا. انتقل إلى [إصلاح مشكلات الروابط الدائمة في WordPress](https://support.kapsulehost.com/ar-ae/wordpress-permalink-issues)، أو امسح قواعد إعادة الكتابة من تبويب **WordPress** الخاص بالموقع، ثم **الإجراءات السريعة**، ثم **مسح إعادة الكتابة**.
