Отказался от применения стиля «потому что его тип MIME (« text / html ») не является поддерживаемым типом MIME таблицы стилей»

28

Внезапно CSS не загружается на моей панели администрирования Magento 2. Внешний интерфейс работает нормально.

Детали ошибки:

  1. «Отказался от применения стиля из« https://www.ornativa.com/pub/static/version1502029409/adminhtml/Magento/backend/en_US/css/styles-old ... »из-за его MIME-типа (« text / html » ) не поддерживается типом MIME таблицы стилей, и включена строгая проверка MIME. "

  2. "Uncaught SyntaxError: неожиданный токен <в JSON в позиции 0 в JSON.parse () при обратном вызове ((index): 68) в Object.execCb (require.js: 1650) в Module.check (require.js: 866) в Module. (Require.js: 1113) в require.js: 132 в require.js: 1156 в каждом (require.js: 57) в Module.emit (require.js: 1155) в Module.check (require.js: 917)»введите описание изображения здесь

Nabarun006
источник
что-нибудь сделано с сервером или .htaccess файлом?
Шьям Кришна Срикумар
1
Та же проблема, с которой я сталкиваюсь
Ren
1
Вы решили свою проблему?
Zus
в этом может помочь magento.stackexchange.com/questions/121312/…
Сурья Пракаш Патель
У меня была эта проблема только сейчас, но это было связано с указанием неправильного модуля в layout / default.xml, где я ссылался на это, исправил это, и это было исправлено
Барри

Ответы:

18

Недавно была очень похожая проблема с сайтом Magento 2. Удалось отследить проблему до очень важного файла .htaccess, отсутствующего в папке pub / static на сервере.

Неясно, каким образом этот файл был загадочным образом удален, но повторное добавление этого файла из чистой установки Magento 2 устранило проблему.

Аарон О'Нил
источник
13

Проблема возникает из-за проблем с разрешениями для статических файлов.

Чтобы исправить эту проблему,

1) Перейти к пути к файлу pub/static/

2) Проверьте, .htaccessдоступен ли файл (скрытый файл - нажмите cntrl + H, чтобы просмотреть его).

3) Если не доступно, в зависимости от версии Magento получите .htaccessфайл в пути к файлу pub/static/и перейдите на свой сервер.

4) Наконец, очистите ваш браузер и кеш Magento и проверьте его.

Sathishkumar
источник
Я не проверяю файл htaccess: D отлично! :)
Алексей Болтынов
9

У меня была такая же проблема этим утром. Я обновил шаблоны электронной почты Sales , затем внезапно перестали работать страницы администратора.

Проблема была решена, когда я повторно развернул ресурсы для страниц администратора.

Я запускаю эти команды:

  1. grunt clean; grunt exec; grunt less
  2. bin/magento setup:static-content:deploy -f -s standard
  3. bin/magento cache:clean

Возможно, CSS должен быть повторно развернут каждый раз, когда обновляются шаблоны электронной почты Sales .

Яс Накано
источник
Не могли бы вы объяснить, что gruntделают команды? Я в настоящее время не использую это. Благодарность!
Джошуа Флуд
1
@JoshuaFlood может быть , эта связь может помочь вам и другие .. devdocs.magento.com/guides/v2.0/frontend-dev-guide/css-topics/...
Fudu
1
@JoshuaFlood grunt - это просто способ автоматизации повторяющихся задач, как в этом случае компиляция меньшего количества файла в css, но вы можете просмотреть весь проект без использования grunt, в моем случае для компиляции
sass
Спасибо, парни! Хотя я не уверен, что хочу слишком сильно вмешиваться в систему magento прямо сейчас, так как я почти закончил настройку своей производственной среды, и я прочитал, что Magento больше не будет поддерживать LESS в ближайшем будущем, поэтому я ' Я подожду, пока они не начнут действовать вместе. Придется поиграть в какой-то момент.
Джошуа Флуд
3

включить rewrite_module для apache

Чандра Пракаш Гупта
источник
Вы имеете в виду: apache httpd.conf строка: LoadModule rewrite_module modules / mod_rewrite.so
Gem
3

Если вы находитесь в производственном режиме, введите эту команду

Настройка bin / magento: static-content: deploy

Если вы находитесь в режиме разработчика, введите эти команды по порядку

1 - грубое исполнение 2 - меньшее

Марсель Аль Мутава
источник
3

Потратьте около часа в поисках решения этой проблемы ...

У меня была свежая версия Magento. Установка 2.2.6 и имела такую ​​же проблему. Ни один из ответов в настоящее время здесь не работал для меня. Напоследок простое:

php bin/magento cache:flush

исправил мою проблему.

Я надеюсь, что вышесказанное придет на помощь, если все остальные советы не пройдут.

Greg
источник
1
Спасибо. Работаю за меня также в 2.3.2
Абдель Карим Матеос Санчес
2

У меня тоже была такая же проблема,

Я переименовал .htaccess как в корневой каталог, так и в каталог / pub. это исправило мою проблему.

Кроме того, вы можете заменить .htaccess с этим

############################################
## uncomment the line below to enable developer mode

#   SetEnv MAGE_MODE developer

############################################
## uncomment these lines for CGI mode
## make sure to specify the correct cgi php binary file name
## it might be /cgi-bin/php-cgi

#    Action php5-cgi /cgi-bin/php5-cgi
#    AddHandler php5-cgi .php

############################################
## GoDaddy specific options

#   Options -MultiViews

## you might also need to add this line to php.ini
##     cgi.fix_pathinfo = 1
## if it still doesn't work, rename php.ini to php5.ini

############################################
## this line is specific for 1and1 hosting

    #AddType x-mapp-php5 .php
    #AddHandler x-mapp-php5 .php

############################################
## default index file

    DirectoryIndex index.php

<IfModule mod_php5.c>

############################################
## adjust memory limit

    php_value memory_limit 768M
    php_value max_execution_time 18000

############################################
## disable automatic session start
## before autoload was initialized

    php_flag session.auto_start off

############################################
## enable resulting html compression

    #php_flag zlib.output_compression on

###########################################
## disable user agent verification to not break multiple image upload

    php_flag suhosin.session.cryptua off

</IfModule>

<IfModule mod_security.c>
###########################################
## disable POST processing to not break multiple image upload

    SecFilterEngine Off
    SecFilterScanPOST Off
</IfModule>

<IfModule mod_deflate.c>

############################################
## enable apache served files compression
## http://developer.yahoo.com/performance/rules.html#gzip

    # Insert filter on all content
    ###SetOutputFilter DEFLATE
    # Insert filter on selected content types only
    #AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript

    # Netscape 4.x has some problems...
    #BrowserMatch ^Mozilla/4 gzip-only-text/html

    # Netscape 4.06-4.08 have some more problems
    #BrowserMatch ^Mozilla/4\.0[678] no-gzip

    # MSIE masquerades as Netscape, but it is fine
    #BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

    # Don't compress images
    #SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary

    # Make sure proxies don't deliver the wrong content
    #Header append Vary User-Agent env=!dont-vary

</IfModule>

<IfModule mod_ssl.c>

############################################
## make HTTPS env vars available for CGI mode

    SSLOptions StdEnvVars

</IfModule>

<IfModule mod_rewrite.c>

############################################
## enable rewrites

    Options +FollowSymLinks
    RewriteEngine on

############################################
## you can put here your magento root folder
## path relative to web root

    #RewriteBase /magento/

############################################
## workaround for HTTP authorization
## in CGI environment

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

############################################
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks

    RewriteCond %{REQUEST_METHOD} ^TRAC[EK]
    RewriteRule .* - [L,R=405]

############################################
## redirect for mobile user agents

    #RewriteCond %{REQUEST_URI} !^/mobiledirectoryhere/.*$
    #RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC]
    #RewriteRule ^(.*)$ /mobiledirectoryhere/ [L,R=302]

############################################
## never rewrite for existing files, directories and links

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l

############################################
## rewrite everything else to index.php

    RewriteRule .* index.php [L]

</IfModule>


############################################
## Prevent character encoding issues from server overrides
## If you still have problems, use the second line instead

    AddDefaultCharset Off
    #AddDefaultCharset UTF-8

<IfModule mod_expires.c>

############################################
## Add default Expires header
## http://developer.yahoo.com/performance/rules.html#expires

    ExpiresDefault "access plus 1 year"
    ExpiresByType text/html A0
    ExpiresByType text/plain A0

</IfModule>

###########################################
## Deny access to root files to hide sensitive application information
    RedirectMatch 404 /\.git

    <Files composer.json>
        order allow,deny
        deny from all
    </Files>
    <Files composer.lock>
        order allow,deny
        deny from all
    </Files>
    <Files .gitignore>
        order allow,deny
        deny from all
    </Files>
    <Files .htaccess>
        order allow,deny
        deny from all
    </Files>
    <Files .htaccess.sample>
        order allow,deny
        deny from all
    </Files>
    <Files .php_cs>
        order allow,deny
        deny from all
    </Files>
    <Files .travis.yml>
        order allow,deny
        deny from all
    </Files>
    <Files CHANGELOG.md>
        order allow,deny
        deny from all
    </Files>
    <Files CONTRIBUTING.md>
        order allow,deny
        deny from all
    </Files>
    <Files CONTRIBUTOR_LICENSE_AGREEMENT.html>
        order allow,deny
        deny from all
    </Files>
    <Files COPYING.txt>
        order allow,deny
        deny from all
    </Files>
    <Files Gruntfile.js>
        order allow,deny
        deny from all
    </Files>
    <Files LICENSE.txt>
        order allow,deny
        deny from all
    </Files>
    <Files LICENSE_AFL.txt>
        order allow,deny
        deny from all
    </Files>
    <Files nginx.conf.sample>
        order allow,deny
        deny from all
    </Files>
    <Files package.json>
        order allow,deny
        deny from all
    </Files>
    <Files php.ini.sample>
        order allow,deny
        deny from all
    </Files>
    <Files README.md>
        order allow,deny
        deny from all
    </Files>

################################
## If running in cluster environment, uncomment this
## http://developer.yahoo.com/performance/rules.html#etags

    #FileETag none
Судьба Алаби
источник
Спасибо за этот ответ, это работа.
Чираг Гондалия
1

У меня недавно была эта проблема, и я не мог найти причину этого вообще.

Это было до тех пор, пока я не проверил debug.log- это оказалось синтаксической ошибкой в ​​пользовательском файле LESS моей темы. (В моем случае я добавил куда-нибудь дополнительную скобку).

  • Я исправил ошибку
  • Снова развернуты статические файлы
  • Почистил и очистил кеш

Я обновил страницу снова, и тема работала правильно.

Я не уверен, почему Magento бросил воблер по этому поводу - это может быть настройкой моего сайта, но эй - это решило это, так что я знаю в следующий раз!

Надеюсь, что это помогает другим :)

Томас Хардинг
источник
1

Чтобы избавиться от этой ошибки, я удалил фрагмент кода CSS из

Панель администратора> Дизайн> Конфигурация> Выбрать тему> Раздел HTML-заголовок> Сценарии и таблицы стилей

Тогда вы можете продолжить. Так как этот файл никогда не будет использоваться в magento :)

Шахзад Ахмед
источник
0

Вам нужно добавить свою тему в этот файл: dev / tools / grunt / configs / themes.js

Орельен
источник
0

В моем случае эта проблема появилась после того, как я удалил менее переменную, которая все еще использовалась в других меньших файлах.

Поэтому Magento не завершил компиляцию CSS, что привело к ответу другого сервера, как и ожидалось.

EssGee
источник
0

Если (по какой-то причине) вы используете тему из Venustheme, файл CSS не создается во время развертывания контента. В Chrome есть ошибка о неподдерживаемых типах MIME, но при проверке по FTP файл даже не существует.

Чтобы исправить это перейдите по ссылке:

Venustheme -> Customization -> and click Save Config

Очистите кеш после этого и все будет хорошо.

стог
источник
0

та же проблема, что у меня была только сегодня. Что бы я ни делал, я не мог решить. Я не мог связаться с администратором, так как CSS не загружался ...

Я понял из информации на странице Google, itr не может найти файлы css в / pub / static. Я проверил файлы .htaccess для всех каталогов, все было хорошо.

Я увидел, что он ищет файлы .css, но потом проверил с помощью cpanel file explorer, у меня есть место .min.css.

Так что я понимаю, это из-за настройки минимизации в admin для CSS и JS.

Прежде чем я проверил все в ДА для слияния и минимизации JSS и CSS.

Так как я не мог связаться с администратором, я открыл phpMyadmin и нашел таблицу core_config_data и сделал поиск PATH =% LIKE% css, а затем js и сделал минификацию и слияние обратно равными «0».

тогда я делаю снова:

  • bin / magento s: d: c

  • Настройка bin / magento: развертывание статического содержимого -f (tr_TR для моего языка)

  • bin / magento c: f

  • bin / magento c: c

все хорошо и эта проблема для меня решена ...

надеюсь, это поможет кому-то, кто сталкивается с таким же делом, как я

Саваш Эрдем Чалишкан
источник
0

Я столкнулся с той же ошибкой в ​​моей локальной установке. Так я попробовал

  1. хрюкать чисто;
  2. Настройка bin / magento: static-content: deploy -f

Во время развертывания статического контента я узнал, что в _theme.less есть какое-то неправильное назначение переменных. Я исправил это и снова побежал

  1. хрюкать чисто;
  2. Настройка bin / magento: static-content: deploy -f

Это исправило мою проблему.

Шрикант Вагела
источник
-2

Моя проблема была в правах владельца, некоторые файлы были перенесены из моей учетной записи в корневую учетную запись.

После просмотра было много файлов, которые нужно изменить, я просто изменил для всей папки www, так как у меня есть только один magento

chown yourusername:yourusername -R /home/<yourusername>/www/*
Джордж Добре
источник
Этот ответ очень зависит от того, под какими правами пользователя / файла работает ваш сервер. Эти ответы чаще всего, чем нет, руины устанавливаются там, где сервер работает под www-данными.
Следопыт