为什么Magento 1.4按文件系统路径包含javascript文件?
我正在使用Magento 1.4测试Magento 1.3站点。我看到了非常奇怪和不一致的行为。Magento没有包含我的javascript文件的URL,而是使用js文件的完整文件系统路径创建标记,如下所示:为什么Magento 1.4按文件系统路径包含javascript文件?,javascript,magento,relative-path,minify,Javascript,Magento,Relative Path,Minify,我正在使用Magento 1.4测试Magento 1.3站点。我看到了非常奇怪和不一致的行为。Magento没有包含我的javascript文件的URL,而是使用js文件的完整文件系统路径创建标记,如下所示: <script type="text/javascript" src="/home/my_username/public_html/js/prototype/prototype.js"></script> 我相信这与新的“主题JavaScript和CSS文件
<script type="text/javascript" src="/home/my_username/public_html/js/prototype/prototype.js"></script>
我相信这与新的“主题JavaScript和CSS文件合并到一个文件”功能有关。事实上,当我登录到管理员并单击“刷新JavaScript/CSS缓存”时,第一个页面加载成功,我看到一个JS包含类似于:
<script type="text/javascript" src="/media/js/5b8cfac152fcb2a5f93ef9571d338c54.js"></script>
但随后的age加载每个单独的JS文件,并带有完整的路径名。这显然是行不通的。有人知道什么地方可能出错或如何解决此问题吗?配置中“Web”下的各种基本URL字段的值是多少?应该是类似于
{{unsecure_base_url}}skin/
对于基本皮肤URL。转到系统->配置->开发人员设置->Javascript设置->合并Javascript文件(测试版),并将其设置为“否”。这确实是一个beta:D问题与javascript合并选项有关。不幸的是,没有javascript表单就无法工作。您必须将app/code/core/Mage/core/etc/config.xml中的merge_files选项更改为0
<js>
<merge_files>0</merge_files>
<deprecation>0</deprecation>
</js>
0
0
在那之后,我删除了var目录中的所有缓存文件和会话文件。编辑config.xml对我来说没用,我不得不在数据库中禁用它 在表“core\u config\u data”中,将路径为“dev/js/merge\u files”(配置id 772)的行的值设置为“0”
谢谢你给我指出了正确的方向 我也遇到了同样的问题,并提出了以下解决方案:
这两种方法的结合实际上让事情恢复了正常。编辑config.xml对我来说没用,我不得不在数据库中禁用它 在表
core\u config\u data
中,将路径为dev/js/merge\u files(config\u id 772)的行的值设置为“0”
谢谢你给我指出了正确的方向
这个解决方案对我有效,谢谢。我也有同样的问题 这是因为magento找不到javascript文件。查看/var/log/exception.log(必须启用登录系统->配置->开发人员选项) 在我的日志中出现以下错误: 异常“exception”,消息为“Warning:filemtime()[function.filemtime]:stat在/var/www/app/code/core/Mage/core/Helper/Data.php第631行/var/www/app/code/core/Mage/core/functions中的/var/www/js/calendar/lang/calendar-en.js失败。php:245
所以我创建了这个文件,瞧,它工作了 在magento 1.4中,配置id是879(对于我)
将此值设置为0将返回所有.js文件。超级怪异检查您的媒体文件夹是否可由运行Web服务器的用户写入。 我有一个指向文件夹的符号链接,该文件夹只能由root用户写入
chown -R www-data:www-data media
帮助。我的情况是权限问题。以下ssh命令在Magento的根目录中运行:
# chown all to proper user and group, ie. www-data
chown -R www-data:www-data *
# change all files permissions to 644
find . -type f -exec chmod 644 {} \;
# change all directories permissions to 755
find . -type d -exec chmod 755 {} \;
# change all to be writable in var and media directories
chmod -R 777 var/ media/
如果仍然不起作用,则将MySQL中核心配置数据中path列的这两个值从“1”更改为“0”:
- dev/css/merge\u css\u文件
- dev/js/merge_文件
媒体
文件夹可由web服务器用户/组写入(无论您希望如何写入),并且一切正常。在某些情况下(如我的情况),您甚至可能无法进入管理员。我听从了尼克网站上的建议()。我必须运行一个查询来临时更改设置,然后登录并清空缓存,然后重新更改设置(再次使用查询,因为mysql已经打开)。查询:更新核心配置数据集值
=0,其中路径
='dev/js/merge_files';我还想知道删除var/cache/*是否有效。请让suer清除服务器和磁缓存。。然后照@Marcindance说的做。。。一切都会成功的!非常感谢。这是我的解决办法。非常感谢。这个问题也发生在我的1.7.0.1上。。。禁用“dev/js/merge_files”是meIf将merge Javascript和merge CSS设置为“No”的唯一解决方案,根本问题可能是您的var/目录不可写。尝试检查权限和所有权。谢谢:)为我工作!!!我的问题是,我无法在编辑器“媒体存储”中看到图像,甚至创建文件夹按钮不起作用,浏览文件和上载文件按钮不可见。