SVG иконки отображаются на локальном сервере, но не отображаются на хостинге?
На сайте иконки в формате SVG отображаются на локальном сервере ( openserver ), но не отображаюся на сайте после загрузки на хостинг ( timeweb ).
Их просто нет и все, я в настройках сайта выставил версию php 8.1 как и в openserver - не помогло:(
В настройках сайта на хостинге стоит кодировка utf-8 ( другие KOI8-R и CP1251 )
Что-то еще стоит попробовать?
Вот код одной из svg иконок, у второй такая же абсолютно структура
|
1 |
<svg class="vk" width="42" height="37" viewBox="0 0 42 37" fill="white" xmlns="http://www.w3.org/2000/svg"> <path d="M39.7398 8.69849C40.0096 7.80884 39.7398 7.15405 38.4419 7.15405H34.1471C33.0533 7.15405 32.5502 7.71631 32.2804 8.34263C32.2804 8.34263 30.0929 13.5453 27.0012 16.9189C26.0023 17.8939 25.5429 18.2071 24.996 18.2071C24.7262 18.2071 24.3106 17.8939 24.3106 17.0043V8.69849C24.3106 7.63091 24.0044 7.15405 23.1002 7.15405H16.3481C15.6627 7.15405 15.2544 7.65226 15.2544 8.11488C15.2544 9.12552 16.8002 9.36039 16.9606 12.2073V18.385C16.9606 19.7373 16.7127 19.9864 16.1658 19.9864C14.7075 19.9864 11.1637 14.7623 9.06374 8.78389C8.64082 7.62379 8.2252 7.15405 7.12415 7.15405H2.82936C1.60436 7.15405 1.35645 7.71631 1.35645 8.34263C1.35645 9.45291 2.81478 14.9687 8.14499 22.2568C11.696 27.2317 16.6981 29.9291 21.2481 29.9291C23.9825 29.9291 24.3179 29.3313 24.3179 28.2993C24.3179 23.545 24.07 23.0966 25.4408 23.0966C26.0752 23.0966 27.1689 23.4098 29.721 25.8083C32.6377 28.6551 33.1189 29.9291 34.7523 29.9291H39.0471C40.2721 29.9291 40.8919 29.3313 40.5346 28.1498C39.7179 25.6659 34.1981 20.5558 33.9502 20.2141C33.3158 19.417 33.4981 19.0611 33.9502 18.3494C33.9575 18.3423 39.2002 11.1397 39.7398 8.69849Z"/> </svg> |
Ах да, подключал я их таким вот способом:
|
1 |
<a class="icon"><?php echo file_get_contents($_SERVER['DOCUMENT_ROOT']. "../icons/vk.svg");?></a> |
Дополнительно:
Они точно выше DOCUMENT_ROOT?
Подозреваю, в этом убогом подоконном Опенсервере просто в конце рута слеш не поставлен, вот он и проглатывает точки.
Иконка же в icons/vk.svg ( папки modules и icons в папке одной общей )
Для решения данной проблемы вы можете воспользоваться услугами фрилансеров. Мы выполним необходимую работу быстро и качественно.
Оставить комментарий Отменить
Ответы
- Есть ответ! к записи Как уменьшить масштаб меньше 100% в Windows 10 (22H2)
- Есть ответ! к записи Аналоги CloudFlare в России?
- Есть ответ! к записи Аналоги CloudFlare в России?
- Есть ответ! к записи Как называется человек, который дизайн придумает для сайта и сверстает его?
- Есть ответ! к записи Можно ли установить Яндекс.Диск на АльтЛинукс?
- Есть ответ! к записи Картинки мутные только на сафари, есть выход?
- Есть ответ! к записи Keenetic. Как настроить SSTP клиент с сертификатом?
- Есть ответ! к записи Чем заменить executor в aiogram 3?
Для того чтобы иконки SVG отображались на хостинге, необходимо убедиться, что сервер правильно настроен для отображения данного типа файлов. В большинстве случаев, проблема может быть связана с настройками сервера или с защитой от XSS атак.
Вот несколько шагов, которые могут помочь решить проблему:
1. Убедитесь, что файлы иконок SVG находятся в доступной директории на хостинге и путь к ним указан правильно в HTML коде.
2. Проверьте файл .htaccess на сервере. Возможно, в нем прописаны правила, которые блокируют загрузку файлов SVG. Убедитесь, что нет запретов на загрузку файлов данного типа.
3. Проверьте настройки Content-Security-Policy (CSP) на сервере. Возможно, они блокируют загрузку файлов SVG из-за ограничений на использование внешних ресурсов. Убедитесь, что в CSP разрешено использование файлов SVG.
4. Попробуйте добавить заголовок Content-Type в вашем .htaccess файле, чтобы указать, что файлы SVG должны интерпретироваться как изображения. Например:
apache
AddType image/svg+xml svg
AddType image/svg+xml svgz
5. Убедитесь, что файлы SVG не содержат ошибок в синтаксисе. Попробуйте открыть их в редакторе кода и проверить на наличие лишних символов или закрывающих тегов.
Если после выполнения всех этих шагов иконки SVG все еще не отображаются на хостинге, рекомендуется обратиться к технической поддержке вашего хостинг-провайдера для дальнейшей диагностики проблемы.