I'm creating a new Reactive Web Application and a screen. Then I run this screen in the browser.
When I check the DevTools console, I get an error favicon.ico file not found as shown below.
The error only occurs when I close the browser -> reopen the browser -> run this screen for the first time.
The error doesn't appear if I run the screen a second time or more.
I've checked the application, but I don't see any location using the favicon.ico file. In Reactive, favicon.png is used instead of favicon.ico.
Also, in the DevTools console, the URL for getting favicon.ico in the error message seems incorrect. I think the URL should be "https://[domain]/[module]/favicon.ico", but the error is "https://[domain]/favicon.ico".
Could you please tell me the cause of the error above and why it only appears on the first run?
If there's a solution, please guide me.
Thank you very much.
hello ,
This behavior is actually expected and browser-driven, not an issue with your Reactive Web app. When you open a fresh browser session (close → reopen) and load a page for the first time, the browser automatically tries to fetch a favicon from the root path (/favicon.ico). This is a legacy/default behavior implemented by browsers, regardless of what the application defines. Since OutSystems Reactive apps use favicon.png and don’t expose a favicon.ico at the root domain, the request fails with a 404. On subsequent runs, the browser caches the favicon information, so it stops requesting /favicon.ico, which is why the error disappears. That also explains why the URL is https://[domain]/favicon.ico instead of including the module path. There’s no functional impact, and it’s safe to ignore. If you want to eliminate the warning entirely, you can explicitly define a favicon link tag in the theme/layout or add a dummy favicon.ico at the domain root via infrastructure configuration (if supported).
Hi @Ha Duc Phuoc ,
What you’re seeing is due to an old convention: browsers will often try to load /favicon.ico automatically, regardless of how the favicon is actually configured.
I would advise just to ignore the issue. This is perfectly acceptable and very common; many websites behave exactly the same way.