Posso vietare il download da link esterni?

Si scopre che la configurazione che Discourse utilizza per nginx include già qualcosa per il hotlinking, anche se è commentato. Quindi quello che puoi fare è aggiungere un paio di sostituzioni al tuo file app.yml per decommentare quelle righe.

Modifica /var/discourse/containers/app.yml con il tuo editor preferito. Alla fine troverai una sezione run e alla fine di quella troverai un exec per echo “end of custom commands”.

Prima di quell’exec, aggiungi le seguenti righe:

  - replace:
      filename: "/etc/nginx/conf.d/discourse.conf"
      from: "#valid_referers none blocked mysite.com *.mysite.com;"
      to: valid_referers none blocked mysite.com *.mysite.com;

  - replace:
      filename: "/etc/nginx/conf.d/discourse.conf"
      from: "#if ($invalid_referer) { return 403; }"
      to: if ($invalid_referer) { return 307 /; }

Nella prima sezione di sostituzione vedrai la riga “to:” con mysite.com *.mysite.com; sostituiscile con il tuo nome di dominio, ad esempio discourse.org *.discourse.org. La seconda sostituzione presuppone che tu voglia che i visitatori vengano reindirizzati alla home page di Discourse.

Dopo aver salvato le modifiche, esegui i seguenti comandi per ricostruire Discourse con la configurazione nginx aggiornata.

cd /var/discourse
./launcher rebuild app
4 Mi Piace