제목 | chmod를 사용하려면 어떻게 해야하나요 | ||
---|---|---|---|
글쓴이 | rhe | 작성시각 | 2014/12/29 13:02:54 |
|
|||
뜬금없는 질문드려 죄송합니다. write_file(); 함수를 사용하기 전에 해당 파일의 권한을 644에서 707로 바꾸어서 함수를 사용하고 다시 644로 바꾸어주고 싶습니다. 그런데 여기저기 찾아보아도 알수가 없어서 이렇게 글을 올립니다. @chmod($file, 0707); 이렇게 하면 사용할 수 없다고 나오는데요 코드이그나이트에서도 이걸 사용할 수 있을거라는 생각은 드는데 어찌해야할지 잘 몰라서.... 양승현님 Tip을 참고해도 $common 에러발생하고 나름대로 이틀을 이리저리 헤메다 도저히 안돼겠다 싶어 글 올립니다. /** * 하뒤 디렉토리 파일까지 퍼미션 지정 * * @param String $path : 디렉토리 * @param int $filemode : 퍼미션 값 */ function chmodr($path, $filemode) { $CI =& get_instance(); if (!is_dir($path)) return chmod($path, $filemode); $dh = opendir($path); while (($file = readdir($dh)) !== false) { if($file != '.' && $file != '..') { $fullpath = $path.'/'.$file; if(is_link($fullpath)) return FALSE; elseif(!is_dir($fullpath) && !chmod($fullpath, $filemode)) return FALSE; elseif(!$CI->common->chmodr($fullpath, $filemode)) return FALSE; } } closedir($dh); if(chmod($path, $filemode)) return TRUE; else return FALSE; } |
|||
다음글 | 간단질문 - unserialize()라는게 뭘 하는건가... (2) | ||
이전글 | [해결]폼검증 실패시에 html input에 값 다시 ... (3) | ||
변종원(웅파)
/
2014/12/29 13:29:20 /
추천
0
|
한대승(불의회상)
/
2014/12/29 13:46:20 /
추천
0
사용 할 수 없다는게 정확히 어떤 의미인가요?
파일을 찾을 수 없다는건지, 권한을 변경 할 수 없다는건지.. 의미가 불명확하네요. |
rhe
/
2014/12/29 14:10:33 /
추천
0
@chmod($file, 0707);에서 @ 지우고 해보니 에러가 발생해서요
권한 변경이 안돼서요 일단 더 찾아보고 공부해볼게요 답변 감사합니다. |
들국화
/
2014/12/29 14:13:26 /
추천
0
|
rhe
/
2014/12/29 14:31:10 /
추천
0
$w_file = APPPATH.'config/database.php';
chmod($w_file, 0777); // database.php 파일없을 경우 생성하여서 쓰기한다. write_file($w_file, $file_contents); 직관적으로 이렇게 했더니 바로 아래와 같은 에러가 발생했습니다. A PHP Error was encountered Severity: Warning Message: chmod(): Operation not permitted Filename: controllers/main.php Line Number: 78 |
들국화
/
2014/12/29 14:41:22 /
추천
0
해당 디렉토리 변경 권한이 없는것 같네요.
권한체크해 보세요. |
한대승(불의회상)
/
2014/12/29 15:01:41 /
추천
0
들국화님 말대로 config 폴더나 database.php의 쓰기 권한이 없어서 발생한 에러인것 같네요.
윈도우에서는 에러가 발생하지 않지만 리눅스나 유닉스 계열 OS에서는 권한이 없으면 에러가 납니다. |
rhe
/
2014/12/29 15:30:00 /
추천
0
아 네 ㅠ
|
게시판이동합니다.