user6388353
user6388353

Reputation: 1957

express not sending static directory

I'm trying to serve a vue.js single page app with a node.js server but I'm having an issue with some express middleware.

Basically I'm trying to serve two things right now. My index.html and a dist folder that holds all of my static files. On localhost my index.html is served correctly but I'm getting a GET error for my dist folder and can not find it in the sources tab.

I've used more or less this same line of code for many single page apps before to serve my static assets but for some reason with this set up it's not serving the dist folder.

app.use(express.static(path.join(__dirname, '/dist')));

Anyone with express experience know why this line isn't working?

Upvotes: 1

Views: 1030

Answers (1)

rdegges
rdegges

Reputation: 33864

You are using express.static incorrectly. By default, express.static will serve the content you have INSIDE of that dist folder.

What you want to do is this:

app.use('/dist', express.static(path.join(__dirname, '/dist')));

This will force express to serve those static assets under the '/dist' route.

Upvotes: 1

Related Questions