Imgur에서 높은 요청 제한을 극복하는 전략

이미지가 SEO에 얼마나 중요한지 점점 더 깨달아가는 중인데, 내 이미지 중 상당수가 여전히 Imgur에서 핫링크되고 있다는 걸 알게 되었습니다. 즉, 이전 포럼에는 업로드 기능이 없어서 사람들이 이미지를 공유할 때 Imgur을 사용했거든요. Discourse로 이관한 지 거의 2년이 되어 가는데, 대부분의 이미지가 아직 다운로드되지 않고 Imgur에서 호스팅되고 있는 것 같습니다(원격 이미지 다운로드 설정은 체크되어 있음 :check_mark:).

이유가 제 서버 IP에서 Imgur으로 보내는 요청 수가 너무 많아서 (일시적으로?) 차단되고 있기 때문인 것 같습니다. 이 한도를 우회하는 방법에 대한 팁이 있을까요?

Imgur 이미지를 단순히 금지하는 감시 단어(watched word)를 설정하거나, 사람들이 이미지를 Discourse로 바로 드래그 앤 드롭하도록 훈련시키기 위한 캠페인을 진행하는 것도 방법일까요?

정상적으로 표시되고 있나요? 혹시 신경 쓰지 않으시는 건가요?

다른 IP에서 Imgur 요청을 수행하는 프록시를 사용하는 것이 해결책이 될 수 있을 것 같습니다. 다소 구린 짓(shady)일 수 있고, 그들의 서비스 약관에 위배될 가능성이 높습니다.

아! 잠깐. API를 사용하는 플러그인이 문제를 해결해 줄 수도 있겠네요.

curl --location -g 'https://api.imgur.com/3/image/{{imageHash}}' \
--header 'Authorization: Client-ID {{clientId}}'

Imgur API.

플러그인이 이를 수행할 수 있다고 생각합니다. 관련 코드는 lib/file_helper.rb의 def self.download 부분부터 시작하는 것 같습니다. 아니면 pull_hotlinked_images와 같은 다른 작업을 만들어 imgur 파일만 처리하고 다른 것을 오버라이드하지 않는 것도 방법입니다. 백로그가 처리되면 새 게시물에서 레이트 리밋에 걸리지 않게 될지도 모릅니다.

코어(core)로 이동될 가능성은 낮아 보이지만, 저는 그런 결정을 내리는 사람이 아니므로 제가 틀렸다면 저나 팀을 탓하지 마세요. :slight_smile:

팁 주셔서 감사합니다! 한 가지 명확히 하고 싶은 점은, 이제 사용자들은 imgur에서 업로드하지 않는다는 것입니다. 이전에 가져온 게시물에서 발생한 대량의 백로그가 다운로드되고 교체되지 않고 있거나(또는 너무 느린 속도로 처리되어 구별이 안 됩니다). 이전 플랫폼에서는 이미지 업로드를 지원하지 않았거든요.

그렇다면, imgur API를 사용하여 이미지를 다운로드하는 작업을 생성하는 플러그인을 만드는 내 아이디어가 문제를 해결해 줄 것입니다. 다만 얼마나 복잡한 작업인지는 아직 정확히 알 수 없습니다.

네, API/플러그인 방식이 가장 실현 가능한 옵션인 것 같아요. 이제 남은 문제는 플러그인을 개발하는 데 드는 노력이 그만한 가치가 있는지 여부죠 :grinning_face_with_smiling_eyes:

처음부터 제 질문이 바로 그것이었죠!