Francesca
Francesca

Reputation: 28108

Correct folder structure for sites

I've just started tidying up the server for a particular site and am running into some trouble when moving files.

I originally had style.css in my main folder, and another folder called images, so paths in the .css went images/myimage.png

Now I have moved style.css into another folder called css.

So the image links in the CSS no longer work, as it's looking for the folder images from it's own CSS folder.

I changed the file path to /images/myimage.png as I thought this would make it climb up a level and then look for the images folder, but this doesn't seem to work.

I'm interested to see what solutions people have and also any suggestions on how people organise their folders for a particular site.

Thanks!

Upvotes: 1

Views: 1044

Answers (2)

Jon Hanna
Jon Hanna

Reputation: 113222

Primary resources I structure in a way that will give some sort of mnemonic to the client process. E.g. if I have a bunch of resources representing employees, I'd put each at /employees/alice, /employees/bob, etc. If I have a resource representing all employees (a list etc.) I'd put it at /employees/, but if I didn't I'd still use that structure.

If this hierarchy is relatively simple, I'll follow it in terms of where I place the files.

If modelling something that is in itself hierarchical, I'd follow that hierarchy in the URI mapping. E.g. /ireland/leinster/coDublin/dublin. In this case I'd rather have the handler somewhere that doesn't have a direct correspondence to the path, like in wwwroot\placesHandler, as following it a bit, but not fully is less clear than obviously not following it.

For secondary resources like images, css, etc that are just part of rendering an entity rather than of primary interest to the client process, (most common on browser-focused human-readable sites). I normally just have an /s/ an /i/ and a /js/ and go with the fact that by default pretty much all webservers will mirror the directory structure of your files in the path-structure of the site. Within those I'll group /i/ and perhaps /js/ according to purpose.

And as I said in the comments, /images/myimage.png will mean http://whateverTheSiteDomainIs/images/myimage.png, to "climb up one" you want ../images/myimage.png.

Upvotes: 1

Boyye
Boyye

Reputation: 291

Do this ../images/myimage.png

This should work, for each level you want to go up, add ../

Upvotes: 6

Related Questions