Ваша ситуация связана с политикой безопасности браузеров, известной как Mixed Content, которая блокирует запросы, если основной сайт загружен по HTTPS, а ресурсы загружаются через HTTP. Вот несколько подходов к решению этой проблемы:
1. **Переключить VPS-сервер на HTTPS**:
- Самый надежный и рекомендованный способ — это настроить SSL-сертификат на вашем VPS-сервере. Вы можете использовать бесплатный сервис, такой как [Let's Encrypt](https://letsencrypt.org/), для получения сертификата.
- Установите и настройте его, чтобы ваш Telegram-бот стал доступен по HTTPS. Это позволит избегать проблем с Mixed Content.
2. **Использовать обратный прокси**:
- Если вы не можете установить HTTPS на своем VPS, вы можете настроить обратный прокси-сервер на основном домене. Например, вы можете использовать Nginx или Apache, чтобы перенаправлять запросы с HTTPS на HTTP.
- На основном сервере создайте конфигурацию, которая будет получать запросы через HTTPS и перенаправлять их на ваш VPS по HTTP.
3. **С помощью CORS и создания промежуточного сервиса**:
- Создайте промежуточный сервер, который будет принимать HTTPS-запросы от основного домена и отправлять их на ваш VPS. Сервер может работать как API-конечная точка.
- Это может потребовать дополнительных настроек и управления запросами и ответами.
4. **Использовать WebSockets или другие технологии**:
- Если ваш Telegram-бот поддерживает WebSocket, вы можете настроить WebSocket-соединение, которое будет работать через HTTPS, если это возможно для вашего сценария использования.
5. **AJAX с использованием HTTP**:
- Хотя это не рекомендуется из соображений безопасности, вы можете настроить ваши AJAX-запросы так, чтобы они отправлялись на ваш поддомен по HTTP, но это потребует изменения настроек, чтобы разрешить смешанное содержимое, что является небезопасным.
### Рекомендация
Наиболее безопасный и наиболее рекомендуемый путь — настроить HTTPS на VPS-сервере с помощью Let's Encrypt. Это не только устраняет проблему Mixed Content, но и обеспечивает безопасное соединение для передачи данных.