NAVIGATION:

 

SUPPORTERS:

FlashComponents
  Flash Templates
  Flash Gallery
  Flash Slideshow
  Flash Menu
  Flash Design
  Flash Video
  User Interface

 

FOLLOW:

RSS it down! Twitter it up! Facebook it like a fiend!

 

 

 

 

 
.HTACCESS
- Popular Web Tricks
       by kirupa  ::  17 March 2004

A really cool feature that web designers overlook is the use of the .htaccess file. Simply put, whenever you see a custom error page (404, 403, etc.), use server side includes, restrict IPs, load a default page, or do any host of events invisible to the user, you are probably going to be using .htaccess.

This article is an addendum to the Custom Error pages tutorial created by redViper. I will provide further examples of items you can add to an .htaccess file beyond just custom error pages.

.htaccess is a simple text file that you add and edit in a text editor such as Notepad. You save the file as .htaccess without any extra characters before or after the name of the file. I know the file's name is a little strange. Then again, most cool things are. Here is how the file looks when uploaded to a web server:

[ notice the strange file naming convention ]

Anyway, the following paragraphs will try to highlight some of the more useful .htaccess features and the code required to get those features to work. To test the following features, copy and paste the line(s) of code that you want into Notepad, save the file as .htaccess, and upload the file to the root web directory of your web server.

Here goes:

  • Custom Error Pages
    Don't you hate it when people access your site via a bad link and are faced with an error message such as "Permission Denied" or "Page Cannot be Found"? Well, you can liven up the error messages by creating custom error pages for each type of error you anticipate your visitors will encounter:
ErrorDocument 404 http://www.kirupa.com/404.htm
ErrorDocument 401 /admin/authorization.htm
ErrorDocument 403 /password/forbidden.htm

To create custom error pages, replace the error code next to ErrorDocument to the appropriate error code, and change the URL of the page that will receiving the error-prone user! For example, here is this site's 404 error page: http://www.kirupa.com/404.htm

  • Redirects
    Here is a nightmare scenario. You decide to shift an entire folder's worth of pages and images into a new folder on your server. If you aren't using any 3rd party programs to update any links to the new location, your users are going to be seeing a lot of the Custom error pages you may have used previously.
     
    A solution would be to the .htaccess file's redirect feature. For example, if you are interested in redirecting users from a folder called temp to another folder, you would use the following code:
Redirect /temp http://www.kirupa.com/developer

Where the first argument is the folder or filename that you are trying to redirect people from, and where the second argument is the file or directory you are trying to get people to go to instead:

Redirect old file/folder new file/folder

The above line of code is a template for how the Redirect feature of .htaccess works.

  • Changing Home Page/Directory Page
    When somebody types the URL to your site, more than likely, by default the index.htm or similar page will load first. You can actually use .htaccess and change which file gets loaded first when your URL gets loaded.
DirectoryIndex file.htm

In the above code, replace file.htm with the name of your new default page. When your visitors visit your site by simply typing in the URL of your site, they will be taken to whichever the default page you specify in the place of file.htm in the above code.

  • IP Blocking
    If you would like to prevent an individual or a group of individuals on a certain IP range from accessing your site, you can selectively deny access to them.
     
    You would use the following command format:
<Limit GET HEAD POST>
order allow,deny
deny from 18.52.3.5
deny from 18.132.152
deny from 24.2
allow from all
</LIMIT>
 

Of course, you would probably not be interested in blocking the fictitious IPs I mentioned above. You should change those to something more relevant. If you are really not well liked, you can add as many deny from lines of code as you want.

If somebody from an entire IP range is bugging, you can block all IPs within that range by only entering a smaller portion of their IP such as 24.2. All IPs that being with 24.2 such as 24.2.35.3 and 24.2.142.122 will also be blocked automatically. You may want to be careful for you may not want to block access to visitors that you still want accessing site.

  • Applying .htaccess to Folders and Sub-Folders
    Your .htaccess file doesn't need to be in the root directory, you can put it in any directory - it then applies to the directory you put it in, and all subdirectories.

    You can also allow only from certain IPs - for example:
order allow,deny
allow from 123.456.789.012
deny from all

Perhaps not so useful if you're applying it to your whole site, but good when used with other directories.

The above .htaccess tricks are ones that I feel you will enjoy using. Remember, some server hosts may consider using .htaccess a violation of your privileges. Some HTML editing programs may have their own file management and access systems that do not play well when in the presence of .htaccess. Also, IIS servers do not support .htaccess.

Thanks to njs12345 for providing some additional .htaccess insights with regards to sub-folders/folders and IIS servers.

I hope the information helped. If you have any questions or comments, please don't hesitate to post them on the kirupa.com Forums. Just post your question and I, or our friendly forum helpers, will help answer it.

The following is a list of related tutorial and help resources that you may find useful:

How to use the Forums
New, Upcoming, and In-Progress Tutorials
How to Help out kirupa.com
Writing Tutorials
 
Cheers!
Kirupa Chinnathambi
kirupaBlog

 

SUPPORTERS:

kirupa.com's fast and reliable hosting provided by Media Temple. flash components
The Text Animation Component for Flash CS3
Check out the great, high-quality flash extensions. Buy or sell stock flash, video, audio and fonts for as little as 50 cents at FlashDen.

Flash Transition Effects

Flash Effect Tutorials

Digicrafts Components
The best flash components ever! Upload, publish, deliver. Secure hosting for your professional or academic video, presentations & more. Screencast.com
Streamsolutions Content Delivery Networks Flipping Book - page flip flash component.
Learn how to advertise on kirupa.com

cdn
content delivery network (cdn)