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

للمبرمجين حتى تفهم سالفة الهاك:

vB تستخدم متغيرين أساسيين هما IPADDRESS و ALT_IP،
هذا الهاك يضيف متغير ثالث اسمه - PROXYIP. إذا ما حصل بروكسي
المتغيير IPADDRESS يوضع كآي بي حقيقي،
ALT_IP يوضع كآي بي حقيقي أيضاً و PROXYIP يوضع فارغ.

إذا صاد له بروكسي ويش يسوي؟
المتغير IPADDRESS يوضع كآي بي حقيقي
أما المتغيير ALT_IP يوضع على آي بي البروكسي
والمتغيير PROXYIP يوضع على آي بي البروكسي أيضاً.



خطوات التركيب هي كالتالي:

الخطوة الأولى:

في ملف class_core.php
ابحث عن:

كود PHP: رمز PHP:
function fetch_ip()
{
return
$_SERVER['REMOTE_ADDR'];
}


أضف أسفلها:


كود PHP: رمز PHP:
/*
Paul M - Try to detect real ip when proxy is in use.
*/
function fetch_real_ip()
{
$real_ip = '';
$ignoreprivate = false;
if (isset(
$_SERVER['HTTP_X_FORWARDED_FOR']))
{
$real_ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else if (isset(
$_SERVER['HTTP_CLIENT_IP']))
{
$real_ip = $_SERVER['HTTP_CLIENT_IP'];
}
else if (isset(
$_SERVER['HTTP_FROM']))
{
$real_ip = $_SERVER['HTTP_FROM'];
}
if (
preg_match("#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#", $real_ip, $iplist))
{
$real_ip = $iplist[0];
if (
$ignoreprivate AND preg_match("#^(127|10|172\.(1[6-9]|2[0-9]|3[0-1])|192\.168|169\.254)\.#", $real_ip))
{
$real_ip = '';
}
}
else
{
$real_ip = '';
}
return
$real_ip;
}


الخطوة الثانية:

أيضاً في class_core.php
ابحث عن:

كود PHP: رمز PHP:
// fetch client IP address
$registry->ipaddress = $this->fetch_ip();
define('IPADDRESS', $registry->ipaddress);

// attempt to fetch IP address from behind proxies - useful, but don't rely on it...
$registry->alt_ip = $this->fetch_alt_ip();
define('ALT_IP', $registry->alt_ip);


استبدل بـ:


كود PHP: رمز PHP:
// Paul M - Set Real, Alt & Proxy IP addresses
$registry->ipaddress = $this->fetch_ip();
$registry->alt_ip = $this->fetch_alt_ip();
$registry->real_ip = $this->fetch_real_ip();
define('ALT_IP', $registry->alt_ip);
if (
$registry->real_ip)
{
define('PROXYIP', $registry->ipaddress);
define('IPADDRESS', $registry->real_ip);
}
else
{
define('PROXYIP', '');
define('IPADDRESS', $registry->ipaddress);
}


الخطوة الثالثة:

في class_core.php
ابحث عن:

كود PHP: رمز PHP:
// define session constants
define('SESSION_HOST', substr($registry->ipaddress, 0, 15));


استبدل بـ:

كود PHP: رمز PHP:
if (!defined('SESSION_IDHASH'))
{
// Paul M - Define session id
define('SESSION_IDHASH', md5($_SERVER['HTTP_USER_AGENT'] . vB_Session::fetch_substr_ip(IPADDRESS)));
}


الخطوة الخامسة:

ارفع الصورة المرفقة px.gif إلى المسار /images/buttons folder.


الخطوة السادسة:

ارفع الهاك من لوحة التحكم كمنتج(product). (الهاك مرفق مع الموضوع) تأكد أن السماح بطغيان الكتابة موضوع على نعم.

اي سئوال انا حاضر


الملفات المرفقة [Product] لجعل منتداك يستخدم الإي zip.gif Proxy-to-real-ip.zip (4.2 كيلوبايت)


FProductD : g[ug lkj]h; dsjo]l hgYd fd hgprdrd uk]lh djwg fi hd fv,;sd