2011-06-09 112 views
0

我正在使用CakePHP构建一个Web应用程序。我正在使用meioupload上传图像。这些图像已成功上传。我想将管理应用程序和公共应用程序分成两个独立的CakePHP应用程序。问题是我无法将上传到public-app的webroot中的图像与admin-app的webroot分享,反之亦然。我正在考虑将这些图像上传到这两个应用程序之外的另一个文件夹中。我在正确的轨道上吗?如果我是,我该怎么做?在cakephp的webroot/img文件夹之外上传图片

谢谢。

回答

0

使用meioupload,它变成我可以使用相对路径,所以我不喜欢这样写道:

public $actsAs = array(
    'MeioUpload' => array(
     'filename' => array(
      'dir' => '../../../path/to/outside/webroot', 
      'create_directory' => true, 
     ) 
    ) 
); 
1

一个解决方案是修改您的脚本以将您的图像上传到可由两个应用程序查看的“共享”目录。或者,如果您使用的是类似Linux的操作系统,则可以在文档根目录下创建该共享目录,并在每个应用程序将调用的目录之间创建一个符号链接。

所以APP1和APP2都可以上传到/var/sharedStuff。 APP1位于/var/www/app1,APP2位于/var/www/app2这两个应用程序都可以有一个符号链接到sharedStuff目录的目录。所以/var/www/app1/app/webroot/img/shared/var/www/app2/app/webroot/img/shared都会在内部指向/var/sharedStuff。然后,您可以从您的应用程序中引用这些图像,就好像它们被放置在该目录中一样img/shared。同样,您需要修改上传脚本以确保它将文件上传到此共享目录(或符号链接),而不是唯一的文件。

为了让您知道,CakePHP内置了创建您自己的管理界面的功能。那里有很多教程。只是谷歌搜索了。将它们分成两个应用程序似乎并不理想。