| 제목 | 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
                             
                            
                                아 네 ㅠ
                             
                         | 
                    
게시판이동합니다.