Ho cercato nel forum una risposta a questo problema e ho provato alcune delle diverse opzioni pubblicate.
Gestisco una pubblicazione Ghost su un Digital Ocean Droplet e un forum Discourse su un Digital Ocean Droplet separato, poiché il consenso del forum sembrava essere che non si dovrebbero installare due applicazioni sullo stesso server.
forum.mysite dot com
mysite dot com
Vorrei che i commenti di Discourse apparissero su ogni post e non ho uno slug di URL mysite.com/blog. Quindi ho seguito la documentazione per ottenere l’URL del sito corrente e usarlo come URL di incorporamento.
Seguendo la documentazione qui: Documentazione ufficiale sull’integrazione
Riesco a far apparire il frame su qualsiasi nuovo post. Tuttavia, non si carica e fornisce il seguente errore:
Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('<URL>') does not match the recipient window's origin ('<URL>').
Ho confermato che le mie impostazioni HTTPS sono corrette. Il mio URL incorporato imita il tutorial, ma ho provato alcune varianti diverse di discourseEmbedUrl per tentare di risolvere il problema. Tutti i riferimenti all’URL dell’articolo corrente causano lo stesso errore.
Ho anche provato ad aggiungere una funzione di attesa, pensando forse che il frame non si caricasse, ma lo stesso errore persiste.
Questo è il mio codice incorporato attuale:
<div id='discourse-comments'></div>
<meta name='discourse-username' content='JosephPaul'>
<script type="text/javascript">
DiscourseEmbed = {
discourseUrl: 'https://forum.mysite.com/',
discourseEmbedUrl: '{{url absolute="true"}}',
// className: 'CLASS_NAME',
};
(function() {
var d = document.createElement('script'); d.type = 'text/javascript'; d.async = true;
d.src = DiscourseEmbed.discourseUrl + 'javascripts/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(d);
})();
</script>
Qualsiasi aiuto qui sarebbe apprezzato, poiché ho esaurito tutte le soluzioni pubblicate. Credo che possa avere a che fare con il fatto che il mio forum e i miei articoli si trovino su macchine separate.