安装 magento 2 不会部署 /pub/static/frontend 和后端
Installing magento 2 does not deploy the /pub/static/frontend and backend
我遇到了这个奇怪的错误,但我没有成功找到根源。
首先,我想说的是,我之前在 windows os 和 xampp 服务器上成功地执行了一些 Magento 2 安装。
我现在正尝试在带有 IISWindows 的服务器上安装一个 magento 实例
基本上在配置 composer 等之后。安装运行良好。
安装过程中没有提到错误等..
但是最后当我尝试访问后端或前端存储时它显示页面但没有 css 或图像文件被加载。
当我查看丢失的资源时,基本上我有 404 个错误,所有 css 和图像文件支持 osed 位于以下文件夹
pub/static/frontend/*
pub/static/backend/*
实际上在我的文件夹 pub/static/ 中只有 _requirejs 文件夹和 .htaccess 文件,但没有文件夹前端和后端
我猜 frontend 和 backend 文件夹是自动生成的,因为它们在 magento 2.0 的初始克隆中不是默认的
所以如果有人知道问题可能出在哪里。
需要考虑的其他信息:
我检查了权限,Web 服务器对每个文件夹和文件 magento 2.0 根目录具有完全访问权限(读取和写入)。
您收到 404 条回复可能是因为您没有启用 mod_rewrite。
你应该启用它。
但是没有它它也可以工作。
这些静态资源有一个 'cache' 系统。
在命令行中导航到文件夹 dev/tools/Magento/Tools/View 和 运行
php deploy.php
效果很好。但如果您有任何问题,请告诉我。
------ 编辑 ------
根据 Chirag Bhavsar 的 answer.Enter 下面的命令从 Magento 文件夹的根目录进行编辑。新命令将是
php bin/magento setup:static-content:deploy
更简单的方法是从 magento 根文件夹执行 运行 下面的命令。
php bin/magento setup:static-content:deploy
这将完美地提供相应文件夹中的内容。如果您有特定的语言,那么 运行 如下所示。
php bin/magento setup:static-content:deploy en_US
php bin/magento setup:static-content:deploy en_GB
静态内容部署过程描述如下:
1) 从 中删除 adminhtml、frontend 和 _requirejs 文件夹pub/static 文件夹。
2) 请不要删除 pub/static 文件夹中的 .htacces 文件。
3) 删除var/cache.
目录下的所有文件夹
4) 为 pub 和 var 文件夹授予 777 权限。
5) 运行 命令:
php bin/magento setup:static-content:deploy
从头开始安装 Magento 2.1.4 时,我也遇到了权限问题,CSS 和 JS 没有加载到页面中,因为服务器没有找到它们,尽管我只是 运行
php bin/magento setup:static-content:deploy
和
php bin/magento cache:clean
事实证明,数据库中需要此设置才能访问 CSS 和 JS,并在首次安装 magento2 后加载站点。
insert core_config_data (config_id, scope, scope_id, path, value) values (null, 'default', 0, 'dev/static/sign', 0);
这似乎是让网站正常运行的唯一解决方案。
首先请从 magento 2 中的 'pub/static' 中删除 'static' 文件夹,然后再删除此文件夹,请将此文件夹中的 .htaccess 文件复制到您电脑的其他文件夹中。
<-- app\code\Magento\Developer\etc\di.xml 中的变化 -->
Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink
<--到-->
Magento\Framework\App\View\Asset\MaterializationStrategy\Copy
之后使用 cmd/shell 运行 这些命令
php bin/magento setup:static-content:deploy -f
和
php bin/magento deploy:mode:set developer
执行这些命令后 运行。将旧的 .htaccess 文件粘贴到新的静态文件夹中。而已。
并清除完整缓存。
php bin/magento cache:clean
您的项目正在运行,享受吧!
我遇到了这个奇怪的错误,但我没有成功找到根源。 首先,我想说的是,我之前在 windows os 和 xampp 服务器上成功地执行了一些 Magento 2 安装。
我现在正尝试在带有 IISWindows 的服务器上安装一个 magento 实例
基本上在配置 composer 等之后。安装运行良好。 安装过程中没有提到错误等..
但是最后当我尝试访问后端或前端存储时它显示页面但没有 css 或图像文件被加载。 当我查看丢失的资源时,基本上我有 404 个错误,所有 css 和图像文件支持 osed 位于以下文件夹
pub/static/frontend/*
pub/static/backend/*
实际上在我的文件夹 pub/static/ 中只有 _requirejs 文件夹和 .htaccess 文件,但没有文件夹前端和后端
我猜 frontend 和 backend 文件夹是自动生成的,因为它们在 magento 2.0 的初始克隆中不是默认的
所以如果有人知道问题可能出在哪里。
需要考虑的其他信息: 我检查了权限,Web 服务器对每个文件夹和文件 magento 2.0 根目录具有完全访问权限(读取和写入)。
您收到 404 条回复可能是因为您没有启用 mod_rewrite。 你应该启用它。 但是没有它它也可以工作。 这些静态资源有一个 'cache' 系统。 在命令行中导航到文件夹 dev/tools/Magento/Tools/View 和 运行
php deploy.php
效果很好。但如果您有任何问题,请告诉我。
------ 编辑 ------
根据 Chirag Bhavsar 的 answer.Enter 下面的命令从 Magento 文件夹的根目录进行编辑。新命令将是
php bin/magento setup:static-content:deploy
更简单的方法是从 magento 根文件夹执行 运行 下面的命令。
php bin/magento setup:static-content:deploy
这将完美地提供相应文件夹中的内容。如果您有特定的语言,那么 运行 如下所示。
php bin/magento setup:static-content:deploy en_US
php bin/magento setup:static-content:deploy en_GB
静态内容部署过程描述如下:
1) 从 中删除 adminhtml、frontend 和 _requirejs 文件夹pub/static 文件夹。
2) 请不要删除 pub/static 文件夹中的 .htacces 文件。
3) 删除var/cache.
目录下的所有文件夹4) 为 pub 和 var 文件夹授予 777 权限。
5) 运行 命令:
php bin/magento setup:static-content:deploy
从头开始安装 Magento 2.1.4 时,我也遇到了权限问题,CSS 和 JS 没有加载到页面中,因为服务器没有找到它们,尽管我只是 运行
php bin/magento setup:static-content:deploy
和
php bin/magento cache:clean
事实证明,数据库中需要此设置才能访问 CSS 和 JS,并在首次安装 magento2 后加载站点。
insert core_config_data (config_id, scope, scope_id, path, value) values (null, 'default', 0, 'dev/static/sign', 0);
这似乎是让网站正常运行的唯一解决方案。
首先请从 magento 2 中的 'pub/static' 中删除 'static' 文件夹,然后再删除此文件夹,请将此文件夹中的 .htaccess 文件复制到您电脑的其他文件夹中。 <-- app\code\Magento\Developer\etc\di.xml 中的变化 -->
Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink
<--到-->
Magento\Framework\App\View\Asset\MaterializationStrategy\Copy
之后使用 cmd/shell 运行 这些命令
php bin/magento setup:static-content:deploy -f
和
php bin/magento deploy:mode:set developer
执行这些命令后 运行。将旧的 .htaccess 文件粘贴到新的静态文件夹中。而已。 并清除完整缓存。
php bin/magento cache:clean
您的项目正在运行,享受吧!