Главная / База знаний / Технические проблемы / Mixed content на HTTPS-сайте
База знаний

Mixed content на HTTPS-сайте

Страница HTTPS, но картинки/скрипты грузятся по HTTP. Как найти и переключить.

Технические проблемы · 3 мин чтения

Симптом

Причина

Как проверить

  1. Проверка в браузере
    - Откройте страницу в Chrome/Edge.
    - Нажмите F12 → вкладка Console.
    - Ищите сообщения «Mixed Content».

  2. Проверка URL-ов
    bash curl -I https://example.com | grep -i location
    - Если редирект отсутствует, добавьте его в конфигурацию сервера.

  3. Проверка файлов шаблонов
    bash grep -R "http://" /var/www/html | head
    - Вывод покажет все строки с http://.

  4. Проверка внешних ресурсов
    - Откройте исходный код страницы (Ctrl+U).
    - Поиск http:// в исходнике.

  5. Проверка CSP
    bash curl -I https://example.com | grep -i content-security-policy
    - Убедитесь, что директива default-src 'self' https: присутствует.

Решение

  1. Обновить все внутренние ссылки
    - Замените http:// на https:// в шаблонах, CSS, JS и конфигурационных файлах.
    - В большинстве CMS можно включить «автоматический HTTPS» в настройках.

```html

logo

logo ```

  1. Использовать относительные пути
    - Если ресурс находится на том же домене, используйте //example.com/... или /assets/....
    - Пример:
    html <script src="//example.com/js/app.js"></script>

  2. Настроить редирект с HTTP на HTTPS
    - Nginx
    nginx server { listen 80; server_name example.com www.example.com; return 301 https://$host$request_uri; } - Apache (mod_rewrite)
    apache RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

  3. Обновить сторонние виджеты
    - Замените URL в виджетах на https://.
    - Если виджет не поддерживает HTTPS, свяжитесь с поставщиком.

  4. Проверить CSP
    - Добавьте https: в директиву default-src и в конкретные источники.
    - Пример:
    nginx add_header Content-Security-Policy "default-src 'self' https:; script-src 'self' https://cdn.example.com; object-src 'none';";

  5. Проверка после исправлений
    - Очистите кэш браузера.
    - Перезапустите страницу и убедитесь, что в консоли больше нет ошибок mixed content.
    - Используйте инструмент Google Search Console → Безопасность → Mixed Content, чтобы убедиться, что проблемы устранены.

Связанные

SEO КП · нужна помощь?

Не хотите разбираться сами?

Запустите технический аудит сайта за 5 минут — получите PDF-отчёт с разбором всех 64 параметров и конкретными точками роста. Или закажите комплексное SEO-продвижение сайта — починим всё это и возьмём на себя дальнейшую оптимизацию.

Запустить аудит за 199 ₽ Узнать про продвижение →