Привет, есть ли какие-то идеи, что могло вызвать потерю всех SVG-иконками на моём сайте, и есть ли способ их вернуть? Это новая установка Docker.
Попробуйте включить force-https? Обновите страницу, нажав Ctrl + F5, чтобы очистить кэш?
Это точно не проблема кэша. Принудительно включить HTTPS тоже нельзя, так как я запускаю это локально.
Что отображается в сетевых журналах?
[08/Feb/2024:23:28:10 +0000] "localhost:8087" 192.168.65.1 "GET /svg-sprite/localhost:8087/svg-1-35f1b7e7d78d4b224c6ced63e8fc60a8ee1add9f.js HTTP/1.1" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36" "-" 404 2915 "http://localhost:8087/" 0.027 0.026 "-" "-" "-" "-" "-" "-" "-"
Возможно, это имеет к этому отношение? Не уверен, что делает базовый URL в середине этого пути к файлу.
Хм, это выглядит… очень неправильно. Я, кажется, не смогу здесь сильно помочь лично, надеюсь, кто-то другой сможет.
Я думаю, что при установке для разработки нужно изменить порт, чтобы изображения отображались:
Это совершенно другая проблема. Вы можете видеть, что ресурс, запрашиваемый моей установкой, уже содержит номер порта 8087 в URL.
Установка для разработчиков — не моя сильная сторона.
Надеюсь, кто-то другой сможет поделиться своими соображениями. ![]()
Может ли кто-то с рабочей установкой сказать, на что у них установлено значение svgSpritePath?
У меня это “/svg-sprite/localhost:8087/svg-1-35f1b7e7d78d4b224c6ced63e8fc60a8ee1add9f.js”, что явно неверно, хотя я не уверен, откуда это берется.
Скорее всего, проблема именно в этом. Вероятно, система ожидает домен без указания порта. (У меня порт не указан)
Я не использую установку через Docker для разработки, поэтому точно не знаю.
В моём случае (Windows WSL) URL выглядит как http://localhost:4200, а для запуска Discourse я использую следующую команду: DISCOURSE_HOSTNAME=localhost UNICORN_LISTENER=localhost:3000 bin/ember-cli -u
Поэтому я думаю, что, возможно, вам нужно определить переменную DISCOURSE_HOSTNAME или аналогичную?
Да, я как раз собирался написать — SVG не загружаются, потому что в JS-файле, где они находятся, указан URL http://localhost:8087/svg-sprite/localhost/svg-…, а этот скрипт пытается загрузить http://localhost:8087/svg-sprite/localhost:8087/svg-… Проблема в порте в имени хоста.
Однако, когда я меняю DISCOURSE_HOSTNAME просто на localhost, сайт вообще не загружается. Похоже, что порт нужен в некоторых местах, но не во всех.
