Organized, Short Folder Structure Using mod_rewrite

By  on  

I tend to be over-organized when I create the folder structure of my customers' websites. I like using descriptive file and folder names for a number of reasons:

  • Search engine friendly URLS and image names (for image searches)
  • Descriptive file names give users a "preview" of the linked page in the status bar (if the anchor text isn't descriptive enough or the link is an image)
  • I want to be able to tell what a file is when I see the file name

One problem with my method is that long folder names can be annoying to type and can bloat your pages resulting in ugly load times. I use the power of mod_rewrite to shorten paths to files I reference most, image files.

The XHTML

Image

becomes...

Image

The mod_rewrite .htaccess

RewriteEngine On
RewriteRule ^gis/(.*)$ /graphics/icons/small/$1 [L]

Recent Features

  • By
    7 Essential JavaScript Functions

    I remember the early days of JavaScript where you needed a simple function for just about everything because the browser vendors implemented features differently, and not just edge features, basic features, like addEventListener and attachEvent.  Times have changed but there are still a few functions each developer should...

  • By
    Write Better JavaScript with Promises

    You've probably heard the talk around the water cooler about how promises are the future. All of the cool kids are using them, but you don't see what makes them so special. Can't you just use a callback? What's the big deal? In this article, we'll...

Incredible Demos

Discussion

  1. Very slick :)

  2. Okay very interesting. How would that apply if your directory structure was set out like this?

    /nr/rdonlyres/2069656a-f68e-4563-b9a5-4b9a9922f7a4/0/transferform0809.pdf

    /nr/rdonlyres/86e6a9ab-1633-4e4b-8790-bff74df03487/0/lamslistpublishedweb11november08.pdf

    As you can see the 3rd subfolder changes and could be anything.

    What if I wanted it to look like.

    /attachment/filename.pdf

    Using the method you mentioned how would it work?

    Cheers
    zeroanarchy

    • efwf

      hahaha melllttttttttt , no one likes you !

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!