dropthehassle

My site works on my computer but not online

If your site works on localhost but shows a blank page, missing images or a 404 once it's online, it's almost always one of three things: you uploaded the project instead of the built folder (dist, build or out), your paths point at your own computer, or a file name differs only in capital letters. The other two, settings that only live on your laptop and an app that needs a server, come up less often.

Your AI can publish. It can never spend your money.

Built it with ChatGPT, Claude, Gemini, Cursor, Replit, v0, Windsurf or by hand? Same steps.

Last updated: 3 October 2026.

Common mistakes, by what you see

Start with what's actually on your screen. It usually points straight at the cause.

What you see onlineUsual causeFix
A blank white pageThe project went up, not the built folderRun npm run build, upload dist
A list of files, or a 404 on the front pageNo index.html at the top of the folderUpload the folder that has index.html in it
Text, but no styling or imagesPaths to your own computer, or capital lettersMake paths relative, match file names exactly
A 404 when you refresh a pageThe host doesn't send unknown addresses to index.htmlOn DropTheHassle this already works
Sign-in or data won't loadSettings only on your laptop, or a server that isn't onlineSee causes 4 and 5

Why localhost is not the internet

localhost just means this computer. When you run npm run dev or open a preview, your laptop is serving the site to itself, and nobody else can open that address. The dev server is also forgiving: it builds your code on the fly and usually finds a file even when the capital letters are off.

Once it's online, the host only has the files you gave it. Nothing gets built, nothing on your laptop can be reached, and every name has to match exactly. That gap is why a site can look perfect at home and fall over the moment it goes live.

Cause 1: you uploaded the project, not the built folder

This is the big one. If there's a package.json in your folder (React, Vite, Astro, a Next.js export, most AI builders), the files you've been editing are the source, not the finished site, and a browser can't run them as they are. Run npm run build, or ask your AI to, and a new folder shows up: dist for Vite, build for Create React App, out for a Next.js export. That's the one that goes online.

DropTheHassle refuses a project zip that still needs a build, and a folder with no page to open first (no index.html and no single HTML page), so you see the problem at once instead of a blank page you only notice a week later.

Cause 2: your paths point at your own computer

Search your code for C:\Users\you\site\logo.png, /Users/you/..., file:// or http://localhost:3000. They work at home because the file really is there. Online they point at nothing. Swap them for paths relative to index.html, like images/logo.png.

On Vite, also glance at the base setting in vite.config. If the site sits at the root of its own link, the default is what you want.

Cause 3: capital letters in file names

Windows and macOS mostly don't care whether a file is called Logo.png or logo.png. Web servers do. Code that asks for Hero.JPG when the file is hero.jpg gives you a missing image online and a perfectly fine one at home. The easy rule: lower case for every file name, and make the code match.

Cause 4: keys and settings that only exist on your laptop

API keys and settings often live in a .env file, and that file stays on your computer. For a site that's built into a folder, the values get baked in at build time, so the .env has to be there before npm run build, not after. One warning: visitors can read anything in the built folder, so only public keys belong there, like a Supabase anon key.

Signing in bounces you back to localhost? Your sign-in provider still has the old address. Add your live one, like https://yourname.dropthehassle.app, to its list of allowed redirect addresses.

Cause 5: your app needs a server or a database

If you start the project with node server.js, python app.py or something like it, part of it is a program that has to keep running. A folder of files can't do that on its own. The pages people see can still go online as a folder. Got a server part too? Keep it on AWS, Google Cloud, DigitalOcean or your own server, and your AI links it to your site in one step.

Fix it in 5 checks

  1. Is there a build step? With a package.json, run npm run build and upload dist, build or out.
  2. Are all paths relative? Search the code for C:\, /Users/, file:// and localhost.
  3. Do the capital letters match? Hold each file name in the code up against the real file.
  4. Are your settings in the build? .env in place before you build, and your live address in any sign-in redirect list.
  5. Does anything need a server? Then that part lives on a server, and the pages go online.

Copy this to your AI

Faster than doing the checks by hand: paste this into whichever AI built the site. It goes through all five and tells you what it changed.

My site works on my computer but not once it is online. Please check these five things and fix what you find:
1. Does this project have a build step? If so, run it and tell me exactly which folder to upload (dist, build or out).
2. Find every path that points at my own computer (C:\, /Users/, file://, localhost) and make it relative.
3. Check that every file name in the code matches the real file exactly, including capital letters.
4. List the settings from .env that the site needs, and make sure they are in the build.
5. Tell me if any part needs a server to run, and which part.
Then tell me which folder to upload.

Once you know which folder it is, this part takes a couple of minutes:

  1. Open dropthehassle.com and press Upload (free). There's no account to make first.
  2. Press Drop your folder and drop in dist, or whichever folder has index.html. A .zip works too. Give your email when it asks. Before you claim, the limit is 25 MB and 1,000 files.
  3. A link like https://yourname.dropthehassle.app appears straight away. It has HTTPS, and nobody asks for a card.
  4. Then hit Claim this site on that same screen. Unclaimed sites are removed after at least 7 days; claimed ones can grow to 100 MB and 5,000 files.

Apps with their own routes survive a refresh too: any address without a matching file is answered with your index.html. Want your own name on it later? A .com bought here is €19 / $19 a year, including VAT in the EU, the same every year, with nothing to set up in DNS. The rest is in how to get your site online.

Questions

Why does my website work on my computer but not on the internet?

Your computer has the whole project, a dev server that builds it on the fly, and file names that only need to match loosely. The host only has what you uploaded. Usually the project went up instead of the built folder, a path points at your own computer, or a file name differs in capital letters.

Why is my site a blank page after I upload it?

Nearly always because the project was uploaded instead of the built folder. Run npm run build and upload dist, build or out. Still blank? Open the browser console: a red 404 on a script or style file means a path problem.

How do I share my localhost site with friends?

You can't send a localhost link: it only opens on your own computer. Tunnel tools can show it while your computer stays on. For a link that keeps working when your laptop is shut, put the built folder online, for example on a free yourname.dropthehassle.app link.

Why does my website not work with www in front of it?

www is a separate name in your domain's settings, so it needs its own DNS record pointing at the same place. On DropTheHassle, www works when its DNS points here.

Why do my images show at home but not online?

Either the path in the code points at your own computer, or the capital letters in the file name don't match. Use relative paths like images/photo.jpg and make each name match the real file exactly.

Can my AI fix this for me?

Most of the time, yes. Paste the prompt from this page into the AI that built the site. It checks the five causes, fixes what it finds and tells you which folder to upload.

Where to go next

Found the culprit? Then the only thing left is putting the right folder online.

Try it with your dist folder