티스토리 뷰


CKEditor & CKFinder 를 PHP 에서 설치시 CKEditor 파일 및 CKFinder 에 설정파일들을 각각 수정해 주어야 한다.

우선적으로 CKEditor 에서 config.js 파일 을 아래와 같이 수정한다.

CKEDITOR.editorConfig = function( config )
{
 config.filebrowserBrowseUrl = '/ckfinder/ckfinder.html',
 config.filebrowserImageBrowseUrl = '/ckfinder/ckfinder.html?type=Images',
 config.filebrowserFlashBrowseUrl = '/ckfinder/ckfinder.html?type=Flash',
 config.filebrowserUploadUrl = '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
 config.filebrowserImageUploadUrl = '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
 config.filebrowserFlashUploadUrl = '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash'
};

위 부분은 CKEditor 와 CKFinder 를 연동시켜주는 부분이다.
이부분이 설정이 되지 않으면, CKEditor 에서 이미지 버튼을 눌러도 업로드 및 서버보기 버튼이 표시되지 않음.

다음으로 해줄 부분은 실 서버에서의 해당 폴더 권한이다.
윈도우의 경우라면, 해당 폴더에 속성에서 보안설정에서  Users 를 추가하고, 해당 Users 에 모든 권한을 부여하면 되며,
리눅스의 경우는 해당 폴더에 권한을 755 로 부여하면 된다.


마지막으로 CKFinder 에서 config.php 파일을 수정하면 된다.


function CheckAuthentication()
{
 // WARNING : DO NOT simply return "true". By doing so, you are allowing
 // "anyone" to upload and list the files in your server. You must implement
 // some kind of session validation here. Even something very simple as...
 return isset($_SESSION['IsAuthorized']) && $_SESSION['IsAuthorized'];
 // ... where $_SESSION['IsAuthorized'] is set to "true" as soon as the
 // user logs in your system. To be able to use session variables don't
 // forget to add session_start() at the top of this file.
 //return false;
}

위 부분을 찾아서 보면 처음에는 return false; 가 활성화 되있으나, 이렇게 되있을 경우 인증이 되지 않아.
CKFinder 기능을 사용할 수 없게 된다, 하여 해당부분을

return isset($_SESSION['IsAuthorized']) && $_SESSION['IsAuthorized'];
로 수정하고 하단부는 위와같이 주석처리 한다.

이후에 해당 config.php 파일 최 상단에 session_start();  를 설정하여 주고,

실 사용시에는 아래와 같은 방식으로 사용하면 된다.
 
<?
 session_start();
 $_SESSION["CKFinder_UserRole"]  = "admin";
 $_SESSION["IsAuthorized"] = "true";
 include_once $_SERVER["DOCUMENT_ROOT"]."/ckeditor/ckeditor.php";
?>
  <p>
   <label for="editor1">
    Editor 1:</label>
  </p>
<?
 $initialValue = '<p>This is some <strong>sample text</strong>.</p>';
 $CKEditor = new CKEditor();
 $CKEditor->basePath = /ckeditor/';
 $CKEditor->config['width'] = 700;
 $CKEditor->config['skin'] = "office2003";
 $CKEditor->editor("editor1", $initialValue, $config, $events);
?>

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함