I was trying to access some ecommerce site but the site never load properly in any browser (Chrome, EDGE, Firefox), BTW Using Fedora 38. I didn’t thought it’s a problem i thought it’s their site issue. So i mailed them. they said no problem on their side, So i thought let me once check on my friend Windows Laptop and it’s loaded properly. I don’t know what’s the issue. I’m sharing the sites, Site1: https://www.almowear.com/ Site 2: https://freakins.com/
Honestly, I’m tempted to call this spam.
I can reproduce the issue on Firefox 113.0.1 even with Content Blocking disabled. Blurry images indicate some JavaScript is failing to load/run (typically on this type of Shopify-based site, the images have multiple sizes, with the smallest as default, and it’s supposed to load higher-resolution images dynamically).
I’d consider it a problem on their end.
Yeah But it’s work fine on Phone or Windows PC. Does it mean Fedora or even whole Linux system misssing some important packages??
What do you mean?
No, it means their site is broken. There are millions of other Shopify-based sites that work fine on Linux.
Often, poorly-designed sites have JavaScript that is all tied together. If one part fails, the whole thing fails, because they don’t catch and handle errors gracefully. The first site tries to load over 60 JS files; it could be any one of them containing a bug, or even deliberately blocking Linux users (I’ve seen such things on payment processors and so-called “security” vendors even in recent years).
You can try using a browser add-on to change your user-agent to look like Windows (for example this add-on for Firefox).
The websites are really broken on Linux. Is it Linux to blame? No, it’s the provider of the toolkits on the webserver. Firefox announces itself with
Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/113.0
so the website knows that you’re running Firefox on Linux and which version.
If they handle this knowledge not correctly, the site might fail. And they do something with it, if you change the “X11” by “X12” by generating a “general.useragent.override” key in “about:config”, the first site works without problem.
Unfortunately, the toolkits on webservers are compiled now into an incredible mess of code, so as user you cannot debug anything, despite the debugging tools in Firefox. But the code received in Firefox contains (search function in developer tools):
Tb("Macintosh");am()||Tb("Windows");(am()?"Linux"===Qb.platform:Tb("Linux"))
and
indexOf("X11")
so they detect Linux and detect X11 and take the wrong road.
It’s the developer of the webshop software to contact, the shop takes a Windows PC and a phone and tells you that nothing is wrong…
I wanted to find out why a site does not load in Linux. The first site can be forced to work by changing the user agent, the second one is a total disaster and does not respond to user agent changes. Even a object not defined error. Why??? This site runs under WinXP with it’s latest Firefox, and under no Linux browser, even not in the MS-Edge for Linux.
The sites are full of obfuscated Javascript from several sources, but browsers have a nice debugging tool, google-chrome works slightly better as Firefox.
So: conclusion: The browser has a Navigator object, read-only and accessible by JavaScript. This contains the OS, Linux X86_64, and you cannot change it. A lot of information can be read-out, and I assume sent to the server, but at least it changes the program flow.
So if a site uses this object, you can change the user agent as much as you want, if the web developer decides to use this object and not to put in a Linux live dvd to test functionality under Linux, the shop will loose a small percentage of customers.
As end-user, I’m aftaid you can do nothing except taking another OS.
And forget about privacy, if the info is not in the HTML header, it’s obtained by Javascript.