2014-02-14 40 views
6

我正在尝试将ckfinder与ckeditor整合。除了一个,一切都可以。当我尝试上传图片,我得到这个错误(请查看图像)无法使用ckeditor配置ckfinder

Unable to configure ckfinder with ckeditor

它说 “文件浏览器是出于安全考虑停用,请与系统管理员联系,并检查CKFinder配置文件“

任何人都可以帮我吗?请。

+0

有时重新登录会解决这个问题,并检查该第一,如果你没有看到这一点错误之前。 –

回答

7

看在ckFinder config文件,你会看到这样的功能:

function CheckAuthentication() 
{ 

    return false; 
} 

默认CheckAuthentication()这是出于安全原因禁用,因为它会允许任何人将文件上传到服务器。

出于测试目的,您可以返回true,但重点在于您实现了一些逻辑以仅授权经过认证的用户。

function CheckAuthentication() 
{ 
    //put some logic here 

    return isset($_SESSION['IsAuthorized']) && $_SESSION['IsAuthorized']; 
} 
+1

谢谢!你解决了我的问题...我正在寻找这个,因为2天,但是,找不到确切的解决方案。 再次感谢... – muaaz

+0

是的,就是这样! 你会期望类似的东西成为安装指南的一部分... –

+0

@meda,兄弟你可以请看看我的问题https://stackoverflow.com/questions/45340568/how-to-change- image-save-location-in-ckeditor-drupal-7? –

0

一个简单的解决方案是使用一个总是返回true的函数强制认证方法,在你的配置文件中使用下面的代码。

你的脚本(笨):

if(login()){ 
    set_cookie('ckf_role','admin',2592000*10); // 10 month 
} 

上:

 $config['authentication'] = function() { 
      return true; 
     }; 

中东:

session_start(); 
    $config['roleSessionVar'] = 'CKFinder_UserRole'; 
    $_SESSION['CKFinder_UserRole'] = !empty($_COOKIE['ckf_role']) ? strtolower($_COOKIE['ckf_role']) : "guest"; 

    $config['accessControl'][] = array(
    'role'    => 'guest', 
    'resourceType'  => '*', 
    'folder'    => '/', 
    'FOLDER_VIEW'   => false, 
    'FOLDER_CREATE'  => false, 
    'FOLDER_RENAME'  => false, 
    'FOLDER_DELETE'  => false, 
    'FILE_VIEW'   => false, 
    'FILE_UPLOAD'   => false, 
    'FILE_RENAME'   => false, 
    'FILE_DELETE'   => false, 
    'IMAGE_RESIZE'  => false, 
    'IMAGE_RESIZE_CUSTOM' => false 
    ); 

    $config['accessControl'][] = array(
    'role'    => 'admin', 
    'resourceType'  => '*', 
    'folder'    => '/', 
    'FOLDER_VIEW'   => true, 
    'FOLDER_CREATE'  => true, 
    'FOLDER_RENAME'  => true, 
    'FOLDER_DELETE'  => true, 
    'FILE_VIEW'   => true, 
    'FILE_UPLOAD'   => true, 
    'FILE_RENAME'   => true, 
    'FILE_DELETE'   => true, 
    'IMAGE_RESIZE'  => true, 
    'IMAGE_RESIZE_CUSTOM' => true 
    );