Une recherche d'adresse dans Rails part normalement du processus applicatif qui exécute Geocoder. Un proxy configuré dans le navigateur du développeur ne prouve pas qu'un worker web ou une tâche de fond emprunte cette route.

Geocoder expose des réglages de proxy dans sa configuration. Dans l'initialiseur de l'application, un point de terminaison explicite peut être fourni pour les deux protocoles de destination :

Geocoder.configure(
  http_proxy: 'proxy.example.net:8080',
  https_proxy: 'proxy.example.net:8080'
)

Sur ce chemin de recherche via Net::HTTP, Geocoder choisit http_proxy ou https_proxy selon le protocole de la recherche et décompose le point de terminaison en hôte, port et identifiants facultatifs. Gardez le réglage cohérent avec le backend de recherche et la version de Geocoder réellement utilisée. Lorsqu'une recherche autorisée chez un fournisseur public ne nécessite aucun compte proxy, la liste de proxies HTTP peut fournir des valeurs hôte:port candidates pour cet intermédiaire HTTP.

Configurez le processus qui effectue le travail. Si le géocodage s'exécute dans un worker de tâches distinct, modifier un initialiseur dans le déploiement web ne met pas à jour la configuration d'un worker déjà en cours d'exécution. Rechargez ou redémarrez le processus concerné selon la procédure de déploiement habituelle de l'application. Pour les recherches exécutées par Sidekiq, vérifiez le processus worker réel et ses entrées côté client.

Articles similaires