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

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

guycohen 12-08-07 11:22

שאלה | התאמת מערכת לsafe_mod
 
שלום,
יש לי מערכת ובעיקרון היא פועלת עובדת הכל טוב הכל יפה
אבל חלק מהעמודים יש לי למעלה שגיאה של העמוד בעקבות safe_mod שהוא דלוק
עכשיו רציתי לדעת אם אפשר לעשות התאמה של חלק מהבקצים שעושים בעיה ביגלל הסייפ מוד
ולהאתאים אותו שיפעלו במקביל שהsade_mod פועל

במידה ויש מישהו שיכול לעשות דבר כזה תפנו אלי
בתמורה כמובן

תודה ויום טוב :)

psycho 12-08-07 12:19

מה שאתה יודע שדורש SAFE MODE OFF פשוט תעשה לו תנאי פשוט שאם SAFE MODE דולק, אז שלא יפעיל את זה.
אמור להיות פשוט, לא?

במיוחד שיש לך משתנה גלובלי שאומר לך אם ה SAFE MODE דולק או לא
והוא

קוד:

<?php
//בדוק אם סייף מוד דולק
if( ini_get('safe_mode') ){
    // סייף מוד דולק
}else{
    // סייף מוד כבוי
}

?>


guycohen 12-08-07 12:28

לא ממש הבנתי אותך
אני רוצה שמערכת תפעל גם כשהסייפ מוד דלוק

חיים 12-08-07 12:44

מתצא תחליף לפונקציות שצריכות סיפמוד כבוי

guycohen 12-08-07 20:25

אז זהו זה אפשרי.?
ומישה יכול לעזור לי בזה אולי?

בניה 12-08-07 20:47

באילו פונקציות אתה משתמש שעושות לך בעיות?

RS324 12-08-07 22:55

אני מהמר ש COPY וכל השטויות האלה...

guycohen 13-08-07 13:38

יש לי בעיקרון בעיה בקוד הבא:

PHP קוד:

<?php
require_once 'constants.inc.php';

class 
DB
{
    var
$_d;var$_f;var$_p;
    function 
DB(){$this->_d=array();$this->_f='';$p=false;}
    function 
open($f,$c=false){if(!is_file($f)){return$c?$this->create($f):0;}$p=@fopen($f,'ab+');if(!$p||!flock($p,LOCK_SH))return 0;include$f;$this->_f=$f;$this->_p=&$p;set_file_buffer($this->_p,0);return 1;}
    function 
create($f){if(!touch($f))return 0;chmod($f,0777);return 1;}
    function 
remove($f){if(is_file($f)){return@unlink($f);}return 1;}
    function 
uset($f){unset($this->_d[$f]);}
    function 
set($f,$v=0){if(is_array($f)){if($v){$this->_d=$f;}else{while(list($k,$v)=each($f))$this->set($k,$v);}}else$this->_d[$f]=$v;}
    function 
get($f){return isset($this->_d[$f])?$this->_d[$f]:exit("Field '$f' does not exist in ".$this->_f);}
    function 
all(){return $this->_d;}
    function 
close(){if($this->_p)fclose($this->_p);$this->DB();}
    function 
save(){$p=&$this->_p;if(!$p)exit("Can't save, no file opened.");$buf=sprintf("<?php\n\$this->_d=%s;\n?>",var_export($this->_d,1));if($p&&flock($p,LOCK_EX)){ftruncate($p,0);fseek($p,0);fwrite($p,$buf);fflush($p);fclose($p);}else exit ( 'Could not open ' $this->_f ' for writting.');}
}
?>


דניאל 13-08-07 13:50

אתה מכיר מה זה safe_mode?

בקצרה,
כשאתה מעלה קובץ מהרשת (לדוגמא: אתר העלאת קבצים) הקובץ עולה עם הרשאה של המשתמש apache
כשאתה מעלה קובץ מהftp הוא עולה עם הרשאה בשם המשתמש שהעלה את הקובץ (לדוגמא: yosi)

safe_mode אומר משהו פשוט,
למשתמש אחד אסור לגעת בקבצים של משתמש אחר ולכן,
כשאתה רושם בקובץ X (שהעלת בFTP) לעשות מניפולציה (העתקה, העברה, שינוי שם וכו') כלשהיא לקובץ Y (שהעלת בדפדפן) הוא לא יאפשר זאת.

מכאן אני בטוח שתצליח לעלות על הפתרון :)

בניה 13-08-07 13:56

תגיד מה בדיוק השגיאה, לא עוזר שאתה סתם מביא מלא קוד צפוף.
ותוריד את כל ה @ זה מסתיר את השגיאות שאותם אולי אנחנו צריכים לפתור.


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

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