是否可以在cakephp 2.4中更改图像文件夹

是否可以在cakephp 2.4中更改图像文件夹,cakephp,cakephp-2.4,Cakephp,Cakephp 2.4,我读了很多文档,但是没有解决问题: 我现有项目中存储在$\u服务器['DOCUMENT\u ROOT']./media/' 我想要,但无法在cakephp 2.4默认图像文件夹中从$\u SERVER['DOCUMENT\u ROOT']./app/webroot/img/'更改为我想要的任何图像 lib/Cake/bootstrap.php包含常量: /** * Path to the public images directory. */ if (!defined('IMAGES'))

我读了很多文档,但是没有解决问题: 我现有项目中存储在
$\u服务器['DOCUMENT\u ROOT']./media/'
我想要,但无法在cakephp 2.4默认图像文件夹中从
$\u SERVER['DOCUMENT\u ROOT']./app/webroot/img/'
更改为我想要的任何图像

lib/Cake/bootstrap.php包含常量:

/**
 * Path to the public images directory.
 */
if (!defined('IMAGES')) {
    define('IMAGES', WWW_ROOT . 'img' . DS);
}

/**
 * Web path to the public images directory.
 */
if (!defined('IMAGES_URL')) {
    define('IMAGES_URL', 'img/');
}

我试图改变:

IMAGES to $_SERVER['DOCUMENT_ROOT'].'/media/'

IMAGES_URL to /
而且根本不起作用。所有图像文件仍然指向
$\u服务器['DOCUMENT\u ROOT']./app/webroot/img/'
我在尝试在视图中渲染图像时看到它:

echo $this->Html->image('/img/ride_scheme/chema.jpg', array( 'width' => 300 ));
如果我在app/webroot/img/ride_scheme图像文件chema.jpg中创建了
,但我在lib/Cake/bootstrap.php中更改了IMAGES常量中的文件夹

我在文件中看到:

常量图像\u URL、JS\u URL、CSS\u URL已被弃用,并且 替换为配置变量App.imageBaseUrl、App.jsBaseUrl、, 分别为App.cssBaseUrl。
常量图像、JS、CSS已被弃用

我想这就是问题所在


请告诉我如何更改图像文件夹

根据您的描述,我认为
IMAGES\u URL
应该是
media/
,而不仅仅是
/

或者,您可以将重写规则添加到
.htaccess
(在项目根目录中)以将所有内容重写到媒体文件夹(假设您的Apache web服务器启用了重写模块):

或者,您可以创建一个符号链接,将img/文件夹链接到您的媒体文件夹(假设您在Linux主机上,并且您具有对服务器的ssh/shell访问权限):

echo $this->Html->image('/img/ride_scheme/chema.jpg', array( 'width' => 300 ));
RewriteRule ^app/webroot/img/(.*) /media/$1
cd app/webroot
rm -rf img/
ln -s ../../media img