У меня есть проект Rails, и только в производстве (хорошо работает локально в разработке), импортированные модули JS, по -видимому, не загружаются, и я получаю ошибки консоли, ссылающиеся на 404 ошибки для файлов: < /p>
**Error: 404 Not Found** https://example.com/assets/controllers/ ... ed_helpers **imported from** https://example.com/assets/controllers/ ... xxxxxxx.js
Версия файлов отпечатков пальцев существует в общедоступной папке. Однако ошибки консоли не ссылаются на них:
'Get
https://example.com/assets/controllers/ ... ed_helpers' написал/> Файл JS, который импортирует модули JS. В консоли это напечатано на пальце, напечатанное имя: 'https://example.com/assets/controllers/ ... xxxxxxx.js'> В этом основном файле JS JS, импорт выглядит так:
import sharedHelpers from './modules/shared_helpers';
, где shared_helpers.js находится в \ Пример \ App \ JavaScript \ Controllers \ Meeting \ Modules и файл, который он импортирует \ Пример \ app \ javascript \ Controllers \ Meeting>
. Обновлено производство.rb < /code>:
config.public_file_server.enabled = true< /code> < /p>
Затем ran
'Grable Assets: precompile' < /p>
Я поднял общую папку и перекомпилировал и заменил < /p>
Я добавил это в nginx conf < /p>
< /p>
.location ~ ^/assets/ {
root /home/ec2-user/example/public;
gzip_static on;
expires max;
add_header Cache-Control public;
}
< /code>
Importmap.rb выглядит так:
pin "application", to: "application.js", preload: true
# Hotwired libraries
pin "@hotwired/turbo-rails", to: "turbo.min.js", preload: true
pin "@hotwired/stimulus", to: "stimulus.min.js", preload: true
pin "@hotwired/stimulus-loading", to: "stimulus-loading.js", preload: true
# Stimulus controllers
pin_all_from "app/javascript/controllers", under: "controllers"
# Meeting modules
pin_all_from "app/javascript/controllers/meeting/modules", under: "controllers/meeting/modules"
# External libraries
pin "meeting-client", to: "https://xxx.esm.mjs"m"
< /code>
I've tried:
Why does Rails give 404 error for all assets?
Rails 7 and Import-map and loading custom JS file
EDIT
Should also mention I'm using secure-headers gem (csp), which has been .
SecureHeaders::Configuration.override(:disable_csp) do |config|
config.csp = SecureHeaders::OPT_OUT
end
Подробнее здесь: https://stackoverflow.com/questions/797 ... ors-for-im
Рельсы, не загружающие активы с отпечатками пальцев в производство, что приводит к 404 ошибкам для импортированных модул ⇐ Javascript
Форум по Javascript
1757245108
Anonymous
У меня есть проект Rails, и только в производстве (хорошо работает локально в разработке), импортированные модули JS, по -видимому, не загружаются, и я получаю ошибки консоли, ссылающиеся на 404 ошибки для файлов: < /p>
**Error: 404 Not Found** https://example.com/assets/controllers/meeting/modules/shared_helpers **imported from** https://example.com/assets/controllers/meeting/parent-file-xxxxxxxxxxxxxxxxx.js
Версия файлов отпечатков пальцев существует в общедоступной папке. Однако ошибки консоли не ссылаются на них:
'Get
https://example.com/assets/controllers/meeting/modules/shared_helpers' написал/> Файл JS, который импортирует модули JS. В консоли это напечатано на пальце, напечатанное имя: 'https://example.com/assets/controllers/meeting/parent-file-xxxxxxxxxxxxxxxxx.js'> В этом основном файле JS JS, импорт выглядит так:
import sharedHelpers from './modules/shared_helpers';
, где shared_helpers.js находится в \ Пример \ App \ JavaScript \ Controllers \ Meeting \ Modules и файл, который он импортирует \ Пример \ app \ javascript \ Controllers \ Meeting>
[b]. Обновлено производство.rb < /code>:
config.public_file_server.enabled = true< /code> < /p>
Затем ran
'Grable Assets: precompile' < /p>
Я поднял общую папку и перекомпилировал и заменил < /p>
Я добавил это в nginx conf < /p>
< /p>
.location ~ ^/assets/ {
root /home/ec2-user/example/public;
gzip_static on;
expires max;
add_header Cache-Control public;
}
< /code>
Importmap.rb выглядит так:
pin "application", to: "application.js", preload: true
# Hotwired libraries
pin "@hotwired/turbo-rails", to: "turbo.min.js", preload: true
pin "@hotwired/stimulus", to: "stimulus.min.js", preload: true
pin "@hotwired/stimulus-loading", to: "stimulus-loading.js", preload: true
# Stimulus controllers
pin_all_from "app/javascript/controllers", under: "controllers"
# Meeting modules
pin_all_from "app/javascript/controllers/meeting/modules", under: "controllers/meeting/modules"
# External libraries
pin "meeting-client", to: "https://xxx.esm.mjs"m"
< /code>
I've tried:
Why does Rails give 404 error for all assets?
Rails 7 and Import-map and loading custom JS file
EDIT[/b]
Should also mention I'm using secure-headers gem (csp), which has been .
SecureHeaders::Configuration.override(:disable_csp) do |config|
config.csp = SecureHeaders::OPT_OUT
end
Подробнее здесь: [url]https://stackoverflow.com/questions/79758077/rails-not-loading-finger-printed-assets-in-production-causing-404-errors-for-im[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия