Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Meteor public folder not working

Tags:

meteor

I'm new to Meteor and I'm trying to understand how to serve static content - images, JS, etc.. I've followed the docs by creating the correct folder structure (which it doesn't really touch on) but making requests to this content just fails over to serving the main app page instead.

For instance - putting an image in "app_root"/public/image.png and making a request to localhost:3000/image.png just returns the main app page.

Any clue what I'm doing wrong here? Thanks!

like image 353
deeo Avatar asked Jul 20 '12 18:07

deeo


2 Answers

The setup you have described sounds correct to me. Media in public/ are served like

http://localhost:3000/myphoto.jpg

The todos example serves images from the public directory. Just back out of whatever project you're in and run: meteor create --example todos then cd into todos/ and run meteor. Then open:

http://localhost:3000/destroy.png 

The image you will see lives in public/.

like image 161
14 revs, 2 users 88% Avatar answered Dec 27 '22 00:12

14 revs, 2 users 88%


Meteor public folder not working

Use ./public directory for serving static assets.

Given the following directory structure:

- server
- client
- public
  - css
    - bootstrap.css
  - images
  - js

You could serve the static assets by dropping 'public' from linked documents.

<link href='/css/bootstrap.css'>

More info here: Official Meteor Docs #FileStructure

Files in /public are served to the client as-is. Use this to store assets such as images. For example, if you have an image located at /public/background.png, you can include it in your HTML with or in your CSS with background-image: url(/background.png). Note that /public is not part of the image URL.

like image 37
lfender6445 Avatar answered Dec 27 '22 02:12

lfender6445