#############################################
# .htaccess — تمرير IP الحقيقي + إعدادات آمنة
# ضع هذا في نفس مجلد موقعك (مثال: /public_html/yourfolder/)
# تنبيه: لا يقوم هذا الملف بأي محاولة لإلغاء حماية الخادم.
# إذا بقيت مشكلة 403 بعد ذلك، تواصل مع دعم الاستضافة واطلب فحص Imunify360/ModSecurity.
#############################################

# --- تفعيل إعادة كتابة الروابط (إن لم تكن مفعلة) ---
<IfModule mod_rewrite.c>
    RewriteEngine On

    # إذا وصل رأس Cloudflare أو X-Forwarded-For أو X-Real-IP، خزّنه كمتغير بيئي REAL_IP
    RewriteCond %{HTTP:CF-Connecting-IP}     !=""
    RewriteRule .* - [E=REAL_IP:%{HTTP:CF-Connecting-IP},L]

    RewriteCond %{HTTP:X-Forwarded-For}      !=""
    RewriteRule .* - [E=REAL_IP:%{HTTP:X-Forwarded-For},L]

    RewriteCond %{HTTP:X-Real-IP}            !=""
    RewriteRule .* - [E=REAL_IP:%{HTTP:X-Real-IP},L]
</IfModule>

# --- إذا كان mod_remoteip متاحًا فسوف يستخدمه لإبدال REMOTE_ADDR بالـ IP الصحيح ---
<IfModule mod_remoteip.c>
    RemoteIPHeader X-Forwarded-For
    # أضف هنا عناوين البروكسيات/الـ CDN الموثوقة (مثال Cloudflare ranges أو عناوين Load Balancer)
    # مثال: RemoteIPTrustedProxy 127.0.0.1
    # RemoteIPTrustedProxy 173.245.48.0/20
    # RemoteIPTrustedProxy 103.21.244.0/22
    # <-- أضف عناوين موثوقة هنا حسب مزوّد CDN/البروكسي لديك -->
</IfModule>

# --- ضع رؤوس X-* في متغيرات بيئية ليقرأها PHP كـ $_SERVER['REAL_IP'] (fallback) ---
<IfModule mod_setenvif.c>
    SetEnvIf X-Forwarded-For "(.*)" REAL_IP=$1
    SetEnvIf CF-Connecting-IP "(.*)" REAL_IP=$1
    SetEnvIf X-Real-IP "(.*)" REAL_IP=$1
</IfModule>

# --- تأكيد تنفيذ ملفات PHP داخل هذا المجلد ---
<FilesMatch "\.php$">
    <IfModule mod_authz_core.c>
        Require all granted
    </IfModule>
    <IfModule !mod_authz_core.c>
        Order allow,deny
        Allow from all
    </IfModule>

    # حاول تعيين معالج PHP الافتراضي؛ بعض الشركات لا تسمح به
    <IfModule mod_php7.c>
        SetHandler application/x-httpd-php
    </IfModule>
    <IfModule !mod_php7.c>
        # لبعض مضيفي LiteSpeed/CGI هذا السطر قد يكون مطلوبًا
        AddHandler application/x-httpd-php .php
    </IfModule>
</FilesMatch>

# --- أمان: منع عرض دلائل المجلد ---
Options -Indexes

# --- محددات أمان إضافية (محتشمة) ---
# منع تنفيذ سكربتات من مجلدات الرفع إن أردت (مثال)
<IfModule mod_php7.c>
    <Directory "/home/*/uploads">
        php_admin_flag engine Off
    </Directory>
</IfModule>

# --- تقليل بصمة الـ Server Header (اختياري، إن سمح الخادم) ---
<IfModule mod_headers.c>
    Header unset X-Powered-By
</IfModule>