Resumo do Problema
Estou encontrando um erro 404 ao acessar o upload de uma imagem através de sua URL no site Discourse ativo (https://techenclave.com), mesmo que a imagem esteja presente no disco e seja servida corretamente internamente. Eu rebakei a postagem, reiniciei o aplicativo e verifiquei que o serviço interno funciona, mas ele ainda retorna 404 externamente.
O Que Está Funcionando
1. Upload Existe no DB
Usando o console Rails, confirmei que o upload existe com todos os metadados corretos:
Upload.find_by(sha1: 'a8fbe877e685e6a6994532c946c446b1279da7d2')
A saída inclui:
url: \"/uploads/default/original/3X/a/8/a8fbe877e685e6a6994532c946c446b1279da7d2.jpeg\"- Nome do arquivo:
IMG202506252257011.jpg - ID:
170265 - Usado na Postagem ID:
3125774
2. Arquivo Existe no Disco
Verifiquei que o arquivo está presente dentro do contêiner:
ls -l /shared/uploads/default/original/3X/a/8/a8fbe877e685e6a6994532c946c446b1279da7d2.jpeg
Arquivo existe com propriedade e permissões corretas:
discourse:www-data, -rw-r--r--.
3. Symlink da Pasta Public Funciona
O symlink public/uploads está intacto:
ls -l /var/www/discourse/public/uploads
# => /shared/uploads
4. Discourse Consegue Servir Internamente
Testado com:
curl -I http://localhost:3000/uploads/default/original/3X/a/8/a8fbe877e685e6a6994532c946c446b1279da7d2.jpeg
Resultado: HTTP/1.1 200 OK
5. Postagem Rebakeada
Rebakeei a postagem com:
Post.find(3125774).rebake!
6. Aplicativo Reiniciado
Executei:
./launcher restart app
Também tentei:
sudo ./launcher rebuild app
(O daemon Docker ficou indisponível temporariamente, mas foi corrigido depois.)
O Que Não Está Funcionando
Acesso Externo à Imagem
Acessar:
https://techenclave.com/uploads/default/original/3X/a/8/a8fbe877e685e6a6994532c946c446b1279da7d2.jpeg
Retorna:
404 Not Found
Isso acontece em navegadores e em modo anônimo.
Com o Que Preciso de Ajuda
Alguém pode ajudar a identificar o que pode causar:
- Um upload que funciona e é servido via
localhost:3000, - mas retorna 404 externamente no domínio público?
O que mais devo verificar? Alguma configuração ou log relacionado para inspecionar?
Agradeço antecipadamente!
