인앱브라우저 favicon 과다호출

안녕하세요 웹 어플리케이션 개발자인데요

안드로이드 14버전 이상 대부분의 기기에서

카카오톡 인앱브라우저로 들어오면 제 사이트 /favicon.ico를 과다호출합니다

수정좀 해주세요

실 유저들이고 유저에이전트, IP는 다양합니다

예시

Mozilla/5.0 (Linux; Android 14; SM-S911N Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/135.0.7049.111 Mobile Safari/537.36 KAKAOTALK/25.3.5 (INAPP)

Mozilla/5.0 (Linux; Android 14; SM-S926N Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/135.0.7049.113 Mobile Safari/537.36 KAKAOTALK/11.4.2 (INAPP)

Mozilla/5.0 (Linux; Android 15; SM-S911N Build/AP3A.240905.015.A2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/136.0.7103.60 Mobile Safari/537.36 KAKAOTALK/25.3.5 (INAPP)

참고로 아이폰이나 타 브라우저, 14미만 기기로 들어오는 사용자들은 과다호출 없습니다

안녕하세요.

운영하시는 서비스에 /favicon.ico을 과다 호출하는 User-Agent에 카카오톡 인앱브라우저가 있어 카카오톡에서 호출했다고 판단하시는 것 으로 이해했습니다.

특별히 운영하시는 서비스를 호출할 이유는 없을 것 같고 User-Agent는 얼마든지 변경 하여 호출가능하니 다른 상황일 수도 있을 것 같은데요.

사이트 URL과 호출한 IP 몇개 알려주시겠어요?

https://hscity.careerlink.kr/
사이트 운영중입니다 안드로이드 14이상 환경, 카카오톡 인앱브라우저로 접속하시면
클라이언트에서 /favicon.ico를 과다 호출하는게 재현됩니다

카카오 인앱브라우저에서는
접속한 사이트의 파비콘 경로가 비어있을 때
favicon.ico를 과다호출하는것 같네요
예시 : link rel=“shortcut icon” type=“image/x-icon” href=“”

제가 운영하는 사이트에는 href 값을 입력해서 해결예정입니다

카카오톡이 과다호출하는 것은 없습니다.

사이트에 접속해보니 png파일을 대량 로드하는 부분이 영향이 있을듯하네요.
png 로드가 내부 리다이렉트 되는게 아니라면,

__rewrites, source: “/favicon.ico” 에서 destination: "/api/favicon"이 다시 되돌려보내는 경우되 상정해볼 수 있구요.

요약하면, 개발하신 시스템 리소스 로딩 시, 브라우저가 재요청하는 상황이나
개발하신 시스템내 리다이렉트 상황으로 추정됩니다.

self.__BUILD_MANIFEST = function(a, s, e, n, i) {
    return {
        __rewrites: {
            beforeFiles: [],
            afterFiles: [{
                source: "/robots.txt",
                destination: "/api/robots"
            }, {
                source: "/sitemap.xml",
                destination: "/api/sitemap"
            }, {
                source: "/favicon.ico",
                destination: "/api/favicon"
            }, {
                source: "/:path*\\.(php|php3|php4|php5|php6|php7|phtml|phps|asp|aspx|jsp|cgi|pl|py|rb|js|ts|sh|bash|zsh|exe|bat|cmd|com|msi|bin|dll|so|class|jar|war|ear|ps1|vbs|wsf|scr|html|htm|xhtml|xml|svg|yaml|yml|ini|conf|log|txt|md|csv|sql|db|sqlite|bak|tmp|iso|img|zip|rar|7z|tar|gz|bz2|apk|deb|rpm|pdf|doc|docx|xls|xlsx|ppt|pptx|psd|ai|crt|key|pem)",
                destination: e
            }],
            fallback: []
        },

png 이미지 로드는 favicon이랑 관련없을텐데요…
<link rel="shortcut icon" ...>에서 href가 비어 있거나 생략되면,
타 브라우저(네이버, 삼성브라우저)는 기본 경로를 /favicon.ico 로 추정해서 한 번 씩 호출하는데
카카오톡 인앱 브라우저만 과다호출해요. 이게 새 탭 띄웠다가 닫으면 발생하는듯 하네요ㅎㅎ
제 사이트는 그냥 href 잘 셋팅해서 회피했습니다… 파비콘 href 비어있는 사이트 만드셔서 재현보시면 도움이 되겠네요 ^^
추가 문의드릴 부분은 없습니다!

rewrite는 프론트 서버단에서 하도록 되어있기 때문에 정상 응답(304 Not Modified)을 줍니다 의도된 캐시응답이구요
정상 응답임에도 클라이언트(브라우저)가 계속 호출하는게 문제이지 않을까요?

브라우저의 재처리는 개별앱이 컨트롤 할 수 없습니다.

네 제 웹앱에서 재처리해서 /favicon.icon에 대한 정상응답(304)을 줬는데요
카카오 인앱브라우저에서는 정상응답을 받았음에도 다시 /favicon.icon을 뒤지고 있다는게 요지입니다

아이폰이나 타 브라우저, 14미만 기기로 들어오는 사용자들은 과다호출 없다고 제보드렸고
새 탭 띄웠다가 닫으면 발생한다고도 제가 말씀드렸기 때문에
계속 말로 얘기하는것보다 내부적으로 파악해보시는게 빠르실 것 같습니다ㅎㅎ