הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [PHP] מניעת שליחת POST מהמחשב (https://hosts.co.il/forums/showthread.php?t=52665)

mayden 24-08-07 17:14

[PHP] מניעת שליחת POST מהמחשב
 
חיפשתי בפורום ולא מצאתי,
איך אני יכול למנוע שליחת POST מהמחשב?

כל מה שמצאתי זה הקוד של RS:
PHP קוד:

if (strtoupper($_SERVER['REQUEST_METHOD']) == 'POST'

    if (
$_SERVER['HTTP_HOST'] OR $_ENV['HTTP_HOST']) 
    { 
        
$http_host = ($_SERVER['HTTP_HOST'] ? $_SERVER['HTTP_HOST'] : $_ENV['HTTP_HOST']); 
    } 
    else if (
$_SERVER['SERVER_NAME'] OR $_ENV['SERVER_NAME']) 
    { 
        
$http_host = ($_SERVER['SERVER_NAME'] ? $_SERVER['SERVER_NAME'] : $_ENV['SERVER_NAME']); 
    } 
    if (
$http_host AND $_SERVER['HTTP_REFERER']) 
    { 
        
$referrer_parts parse_url($_SERVER['HTTP_REFERER']); 
        
$http_host preg_replace('#^www\.#i'''$http_host); 
        
$http_port intval($referrer_parts['port']); 
        
$refhost $referrer_parts['host'] . (!empty($http_port) ? ":$http_port" ''); 

        if (!
preg_match('#' preg_quote($http_host'#') . '$#siU'$refhost)) 
        { 
            die(
'We Dont take POST requests (only from localhost) From other hosts.'); 
        } 
    } 


אבל הוא לא עוזר לי כי זה משרת אחר, ואני צריך מהמחשב עצמו שיהיה אסור.

יש למישהו רעיון איך עושים את זה?

RS324 24-08-07 17:16

מה זה הקוד של RS ? שלי ?

בניה 24-08-07 17:17

אתה רוצה שלא יוכלו לשלוח בקשות POST לשרת?

mayden 24-08-07 18:34

כן שלך (RS324) מצאתי אותו כאן בפורום הבאת לאיזה אחד,
ובניה אני רוצה שישלחו בקשות POST מהשרת שלי לשרת שלי (בין הדפים של השרת), אבל אני לא מעוניין שישלחו בקשות POST מהמחשב אל השרת.

כאילו, אני יכול עכשיו לעשות דף HTML עם אותם פרמטרים ולשלוח את הבקשה לשרת ואז הוא יקבל את זה כרגיל. אתה מבין?

4ior 24-08-07 19:07

פשוט תגביל את הרפרר לאתר שלך..מה הבעיה?

mayden 24-08-07 19:55

מה ז"א, איך אני עושה זאת?

syn 24-08-07 20:00

$_SERVER['HTTP_REFERER']
מביא לך את כתובת האתר שממנו הופנה המשתמש.
ז"א אם מישהו לוחץ על אחד הקישורים בחתימה שלי, ואני שם את הפונקציה הנ"ל באתר, אתה תראה שכתוב host.co.il.

Tomer 24-08-07 20:14

שימו לב שיש משתמשים שמבטלים שליחת REFERER (או שאפילו בלי ידיעתם כמו Norton Internet Security)

4ior 24-08-07 20:16

אתה יכול לעשות את זה גם עם session...

בניה 25-08-07 13:30

רגע, אתה רוצה שיוכלו לשלוח טפסים בPOST רק מטפסים שנמצאים בדף בשרת שלך או רק שדף PHP שלך יוכל לשלוח בקשתHTTP עם POST לדף אחר שלך?


כל הזמנים הם GMT +2. הזמן כעת הוא 22:52.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ