编辑页面时,KCFinder图像浏览器出现404错误

时间:2016-06-29 01:05:54

标签: codeigniter ckeditor kcfinder

我将KCFinder集成到KCEditor中,以便在Codeigniter站点中上传图像。当我创建一个页面时,它可以工作。我可以将图像上传到服务器并将其插入页面。但是当我从MySQL返回到CKEditor进行编辑时,KCFinder在我尝试浏览图像时会抛出404错误。

问题是在编辑时,图像浏览器会出错!但是编辑页面和创建页面都链接到同一个KCFinder文件夹,所以我不明白为什么它在页面编辑过程中会中断。

以下是网址在ckeditor的config.js文件中的方式:

   config.filebrowserBrowseUrl = '../kcfinder/browse.php?opener=ckeditor&type=files';
   config.filebrowserImageBrowseUrl = '../kcfinder/browse.php?opener=ckeditor&type=images';
   config.filebrowserFlashBrowseUrl = '../kcfinder/browse.php?opener=ckeditor&type=flash';
   config.filebrowserUploadUrl = '../kcfinder/upload.php?opener=ckeditor&type=files';
   config.filebrowserImageUploadUrl = '../kcfinder/upload.php?opener=ckeditor&type=images';
   config.filebrowserFlashUploadUrl = '../kcfinder/upload.php?opener=ckeditor&type=flash';

我能解决这个问题的唯一方法是使用绝对URL。所以我用http://localhost.dev取代../替换所有路径,就像这样......

config.filebrowserBrowseUrl = 'http://localhost.dev/kcfinder/browse.php?opener=ckeditor&type=files';  

这解决了这个问题,但出于可移植性的原因,我不喜欢Absolute URL这样的情况(每当我将网站移动到不同的环境时,我都必须更改URL)。有没有办法解决这个问题并维护相对的URL? N / B 任何无痛替代品都是最受欢迎的。

1 个答案:

答案 0 :(得分:1)

如果KCFinder位于CKEditor安装的plugins文件夹中:

config.filebrowserBrowseUrl = CKEDITOR.getUrl( CKEDITOR.plugins.getPath( 'kcfinder' ) + 'browse.php?type=files' );
config.filebrowserImageBrowseUrl = CKEDITOR.getUrl( CKEDITOR.plugins.getPath( 'kcfinder' ) + 'browse.php?type=images' );
config.filebrowserFlashBrowseUrl = CKEDITOR.getUrl( CKEDITOR.plugins.getPath( 'kcfinder' ) + 'browse.php?type=flash' );
config.filebrowserUploadUrl = CKEDITOR.getUrl( CKEDITOR.plugins.getPath( 'kcfinder' ) + 'upload.php?type=files' );
config.filebrowserImageUploadUrl = CKEDITOR.getUrl( CKEDITOR.plugins.getPath( 'kcfinder' ) + 'upload.php?type=images' );
config.filebrowserFlashUploadUrl = CKEDITOR.getUrl( CKEDITOR.plugins.getPath( 'kcfinder' ) + 'upload.php?type=flash' );