没有生成Magento 2静态文件

时间:2015-05-25 14:07:03

标签: php apache magento magento2

从github来源克隆Magento2:https://github.com/magento/magento2

安装顺利。但是,当浏览器下载静态文件时会出现一些问题。缺少多个文件:

pub/static/frontend/Magento/blank/en_US/*

安装顺利,AFAIK加载了所有静态文件。

P.S。

这可能在某种程度上相关,但似乎URL没有被正确重写 - 抛出404页面。我猜有一些强烈的相关性,但我看不清楚到底在哪里?做了一些研究(应用它们)但没有结果

3 个答案:

答案 0 :(得分:0)

对于"部署"我没有任何运气。命令。 我打开了开发人员模式,它不需要部署的静态文件,但仍然没有去

原来还有其他问题: CSS和JS文件的路径名仍然在" pub / static"下的已部署目录中查找文件。 在' core_config_data'中添加此设置解决了这个问题:来自This Answer

insert core_config_data (config_id, scope, scope_id, path, value) values (null, 'default', 0, 'dev/static/sign', 0); 

在那个问题解决之后我仍然遇到了问题。 .htaccess文件包含使用Apache 2.2语法的行。我将主.htaccess更改为apaches 2.4语法,但没有意识到整个系统中有很多.htaccess文件。 " pub"目录阻止访问css和js文件,因为Apache在无法解析后放弃了.htaccess

在.htaccess中,我只是将这两行的所有出现都作为注释

    #order allow,deny
    #deny from all

它只是我本地计算机上的一个演示安装,所以我并不担心。真正需要的是.htaccess文件的Apace 2.4版本。

答案 1 :(得分:0)

首先,您必须设置文件权限

find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
chown -R :www-data . # Ubuntu
chmod u+x bin/magento 

然后通过命令php bin/magento clear:cache

清除缓存

从现在开始,当您转到任何页面时,都会自动生成必要的静态文件。

答案 2 :(得分:-1)

您必须清除 pub / static 文件夹中的文件夹,然后再部署内容

删除pub / static文件夹中的文件夹

rm -rf pub/static/frontend/ pub/static/adminhtml/ pub/static/_requirejs/

而不是部署

bin/magento setup:static-content:deploy