Основная проблема была вызвана некорректной работой переписывания (как сказал @Marius). В RewriteBase
моем каталоге их не было, pub/static/
и Apache не смог найти файлы, потому что искал их в корневой папке. После того, как мы добавили:RewriteBase /pub/static
все начинает работать.
Как это работает:
по этому адресу:
Http: //m2.uchuhlebov.web.ra/pub/static/version1481885888/frontend/Magento/luma/en_US/mage/requirejs/mixins.js
перезапись должна работать:
RewriteRule ^version.+?/(.+)$ $1 [L]
как строка началась с корневой папки:
/pub/static/version...
он не работал и не мог перенаправить в файл, нужно.
Переписать без базы:
Перепишите с базой:
Вот часть моего .htaccess
файла из pub/static
(переписывает):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /pub/static
# Remove signature of the static files that is used to overcome the browser cache
RewriteRule ^version.+?/(.+)$ $1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* ../static.php?resource=$0 [L]
</IfModule>
Как отключить управление версиями статических файлов:
Если вы не хотите использовать статическое управление версиями файлов, вы можете отключить эту функцию в административной области Magento:
Можно изменить этот параметр для области по умолчанию, используя следующий запрос MySQL :
INSERT INTO `core_config_data`(`path`, `value`) VALUES ('dev/static/sign', 0) ON DUPLICATE KEY UPDATE `value`=0
Затем выполните следующую команду, чтобы очистить кеш конфигурации:
bin/magento cache:clean config
PS: Мой ответ актуален для пользователей apache2. Если вы используете NGINX, посмотрите этот ответ (автор @ kevin-javitz)