Olá
Gostaria de fazer alguns testes no Discourse sem necessariamente passar pelo seu nome de domínio público configurado. Por exemplo, se o Discourse foi instalado e configurado como https://uat.mysite.com, então eu posso obviamente abrir meu navegador e acessar https://uat.mysite.com, o que significa que meu navegador sairia da minha rede interna para a Internet pública para resolver o nome de domínio para seu endereço IP público e carregar as páginas através de seu endereço IP público.
Acabei de tentar acessar o Discourse através do endereço IP interno do servidor (por exemplo, 192.168.1.2 mostrado abaixo) e, corretamente, ele não carrega devido à Política de Segurança de Conteúdo. Os erros que estou recebendo são da seguinte forma.
Refused to load the script 'http://192.168.1.2:12000/assets/locales/en-a9c88e45eb548bd7c807aecfd37d218891e213b5c1fd254857e0f16c72d73996.js' because it violates the following Content Security Policy directive: "script-src http://uat.mysite.com/logs/ http://uat.mysite.com/sidekiq/ http://uat.mysite.com/mini-profiler-resources/ http://uat.mysite.com/assets/ http://uat.mysite.com/brotli_asset/ http://uat.mysite.com/extra-locales/ http://uat.mysite.com/highlight_js/ http://uat.mysite.com/javascripts/ http://uat.mysite.com/plugins/ http://uat.mysite.com/theme-javascripts/ http://uat.mysite.com/svg-sprite/ 'sha256-rwfDVOTzygQmkOwFNAeX564B66beHoel4+gRLgQUgHg='". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback.
---------------------------------------------
| |
------------
uat.mysite.com resolve para 98.1.2.3 --> | IP Público | Servidor executando Discourse. |
| 96.1.2.3. |
------------ |
| |
| ---------------- |
| | IP Privado | |
| | 192.168.1.2 | |
---------------------------------------------
^
|
192.168.1.2 ------------------------------------------------------------
O motivo pelo qual eu gostaria de acessar o Discourse através do IP interno do servidor é porque quero fazer testes. Por exemplo, se eu quiser fazer testes de carregamento, não quero necessariamente carregar a rede que atende à Internet. Ou se eu quiser instalar uma instância de teste no meu laptop ou em um servidor de compilação sem necessariamente configurar o DNS.
Eu acho que sempre posso substituir isso definindo uma entrada personalizada em /etc/hosts, mas existe alguma maneira de desativar o CSP ou defini-lo para confiar em outras fontes para permitir testes?