样式不加载在magento由于错误的url路径,如何解决这个问题


Styles not loading in magento due to wrong url path, how to solve this?

我已经在我的本地系统上安装了magento,一切正常,只是样式没有加载。

我观察到这个问题是由于不正确的样式表url,当请求被发送(发现使用网络在firebug).

请求url:

http://se.com/var/www/se.com/skin/frontend/default/jm_wall/css/layout.css 

请求url应该是:

http://se.com/skin/frontend/default/jm_wall/css/layout.css 

我怎样才能解决这个问题?


额外的信息:

  • 我已经从ubuntu 12.04(新安装)从ubuntu 10.04(它在10.04上运行良好)迁移到
  • 我已配置apache虚拟主机
  • 我设置了web/unsecure/base_url &数据库
  • core_config_data表中web/secure/base_urlhttp://se.com/
  • 我有var, skin和media文件夹的完全权限
  • Magento缓存被禁用并清理(为了安全)

朋友们,我已经解决了这个问题。

我重新做了我之前做过的所有步骤,比如从svn获取所有文件,重新导入数据库,并更改web/unsecure/base_url &Web/secure/base_url,配置apache虚拟主机等

但我认为解决问题的方法是将media和var目录的所有权改为www-data,而不是kaushik,并赋予这些文件夹完全的权限。

我这样做是因为在主服务器中,这些目录属于www-data用户..

另外,我观察到css正在从se.com/media/css文件夹加载,该文件夹是在媒体目录正确设置后自动创建的,这之前没有发生,该目录有css文件,如0a039da6028e6d636132ecd5e235f417.css等。

请求的url是这样的(从网络窗口在firebug)…

http://se.com/media/css/0a039da6028e6d636132ecd5e235f417.css 

而不像我上面提到的应该如何(http://se.com/skin/frontend/default/jm_wall/css/layout.css),也不像请求是如何发送的(http://se.com/var/www/se.com/skin/frontend/default/jm_wall/css/layout.css)

需要进入sql管理器并执行以下操作:

SELECT * FROM `core_config_data` WHERE `path` LIKE '%merge%'

然后将值从1更改为0

我在使用脚本清除缓存和重新索引时遇到了类似的问题。

我的朋友@brucekaushik给出了完美的答案。我想把票投给他,但做不到。

简单地做如下…

  1. 将目录更改为Magento根目录
  2. 运行以下命令:

sudo chown -R www-data:www-data media/var/


谢谢兄弟!

css来自下面url的原因是css合并选项在管理面板中设置为"YES" ..http://se.com/media/css/0a039da6028e6d636132ecd5e235f417.css

如果你想得到这个(http://se.com/skin/frontend/default/jm_wall/css/layout.css),请将css合并选项设置为"NO"并清除缓存并再次检查.....

我想这会有帮助....