4 Ways to Use Your .htaccess File

Kelly Lyons

Oct 06, 20216 min read
htaccess file

Your .htaccess file can be a useful tool when you need to improve your website and customer experience. It can even support your SEO efforts by ensuring your website is crawlable, indexable, and loads quickly. 

Let’s review how .htaccess files work, how to use them, and alternatives you can take if you're not ready to edit your file directly. 

What Is a .htaccess File?

A .htaccess file is a plain text file used to configure certain aspects of your website, like redirects, IP management, and more. Each file is located in a directory on your server and contains configurations for that specific directory of your site. 

For example, edits to a .htac/cess file in the “/image” directory of your website would only affect pages in that directory.

If you place the .htaccess file in the root directory of your website, the file’s configurations would apply to all the URLs on your site. 

Common Uses of .htaccess Files

Developers often use .htaccess files to configure the ways your website loads or appears. The most common uses include:

  1. Redirecting URLs
  2. Creating custom 404 pages
  3. Forcing HTTPS instead of HTTP
  4. Manage IP address access to your website

How to Use a .htaccess File 

Much like the HTML code that powers your website, your .htaccess file also needs to follow certain rules. 

To start, make sure that your website has an active .htaccess file. Your server settings should include an option to manually allow a .htaccess file to override your current website configurations. Then to create or edit a .htaccess file you will need to:

  1. Use a plain text editor
  2. Write in Apache programming language
  3. Save the file with the file name: “.htaccess”
  4. Upload to your site through an FTP client

However, remember that your configurations will apply to all pages in the directory the file is in, so be mindful of where you place your .htaccess file.

Reasons to Avoid Using .htaccess

Using your website’s .htaccess file is one way to configure your site for your users. However, making any changes to the file should be done with caution as it can influence your site's

  • Speed: Your server scans a page’s directory, including its .htaccess file, each time a page loads. 
  • Security: Anyone with access to your website’s .htaccess file has full control over the server configuration. Any changes made are live instantly, which could pose a large security risk. 
  • Accessibility: Errors in your .htaccess file can take your website offline. 

When to Use .htaccess File Alternatives

If you aren’t experienced in programming and coding, consider hiring a professional to help or find other ways to configure your website's servers.

If you want to use your .htaccess file to configure the following, try these alternatives:

1. Redirect URLs 

Redirecting URLs involves pointing one URL to another — usually because the old URL is no longer active or relevant. The redirect takes users and crawlers to the new URL when they land on the old URL.

How to Redirect URLs Using .htaccess

You can redirect URLs using .htaccess in several ways, depending on what you need to redirect.

For example, if you are redirecting your domain to a different domain, you’ll add the following to your .htaccess file:

Redirect 301 "/service" " https://newdomain.com/service"

However, if you just want to redirect one URL to another URL on the same domain, you’ll use a different code:

Redirect 301 "/old_url.html" "/new_url.html"

Here are the most common redirects used in a .htaccess file: 

Redirect a single page

Redirect 301 /pagename.php http://www.domain.com/pagename.html

Redirect an entire site

Redirect 301 / http://www.domain.com/

Redirect an entire site to a subfolder

Redirect 301 / http://www.domain.com/subfolder/

Redirect a subfolder to another site

Redirect 301 /subfolder http://www.domain.com/

Redirect any file with the .html extension to .php extension

RedirectMatch 301 (.*)\.html$ http://www.domain.com$1.php

Redirect from old domain to new domain

RewriteEngine on

RewriteBase /

RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

Other Ways to Redirect URLs

First, check for any technical issues with redirects with a site audit tool. The Site Audit can identify any issues with your redirects, and offer guidance on how to fix them.

To get started with the Site Audit tool:

  1. Log into your Semrush account
  2. Select Projects under Management to view your project(s).
  3. Select your preferred project, then select Site Audit from the project dashboard.
htaccess

4. Configure your audit settings. You’ll be able to set the audit’s crawl scope, disallow URLs, and add additional website login information.

htaccess

5. Select Start Site Audit.

The tool lets you know when your results are available for review. Select the Issues tab to search for pages that return a 4xx error or broken links:

htaccess

Next, check to see if your CMS has a redirect feature. For example, WordPress offers free plugins, like Redirection, that allow you to add redirects from one URL to another. 

Check to see how your platform handles redirects in user guides before you attempt to handle them using your .htaccess file. 

2. Custom 404 Page

If and when your website does display a 404 error, a branded 404 page can look more professional and provide a better experience for users. 

How to Create a Custom 404 Page Using .htaccess

You will need to first create a webpage and upload the code to your .htaccess file:

ErrorDocument 404 /error/pagenotfound.html

Change the location of the page to the location of your 404 page.

Other Ways to Create a Custom 404 Page

Most CMS platforms offer the option to edit your 404 page via your website’s theme. You may need some level of coding to edit the page without disrupting your theme file. 

In WordPress, most themes will have a 404 page available. Find the 404 error template file (usually saved as “404.php”) and open it in a text editor. From there, you can edit the 404 message text.

3. Force HTTPS instead of HTTP 

Using HTTPS encrypts communications between the browser and your website. HTTPS is the preferred way to load data whether your website has sensitive information or not. To ensure that all viewers load your website securely over HTTPS, you can force their browser to always use the SSL certificate.

How to Use HTTPS instead of HTTP Using .htaccess

You can force HTTPS using your .htaccess file as long as the RewriteEngine module is turned on. You will then need to add the code below:

RewriteCond %{HTTP_HOST} !^www\.(.*)$ [OR,NC]
RewriteCond %{https} off
RewriteRule ^(.*)$ https://www.yourdomain.com/$1 [R=301,L]

Other Ways to Use HTTPS instead of HTTP

Depending on what platform your website is hosted on, you can force HTTPS with a redirect.

The most reliable way to do this without using your .htaccess file is to use your web hosting service. Web hosts, like Cloudways and cPanel, provide an option to enable HTTPS redirect if your website has an SSL certificate. 

However, if you are a WordPress user, you can opt to use a plugin like the free Really Simple SSL. 

4. Allow or Deny Specific IP Addresses Access to Your Website

To manage specific IP addresses with your .htaccess file, add this rule to your file in the directories you need to restrict access to:

Require all granted
Require not ip 100.0.1.0

If you need to block more than one IP address, you can add additional lines using “Require not:”

Require not ip 100.0.2.0
Require not ip 109.9.0.1

You can also block domains from accessing your website by entering the domain name rather than the IP:

Require not host blockeddomain.com

Other Ways to Manage IP Addresses

You can manage website access with your web hosting platform. Most web hosts provide an option to create rules for specific IPs that allow and block access to your website. 

Key Takeaways

  • Editing your .htaccess file can be useful as long if you’re comfortable editing and writing code.
  • You can use your .htaccess file to force HTTPS, add custom 404 pages, and create URL redirects.
  • However, even the smallest .htaccess file errors can cause internal server issues and render your website inaccessible. If you aren’t comfortable editing your website's file, consider hiring a professional or trying alternatives.

Find and Fix Sitemap Errors

with the Site Audit Tool

ADS illustration
Author Photo
Kelly LyonsWriter, editor, SEO strategist, and supporter of the Oxford comma. There‘s little I enjoy more than lounging on my couch playing video games and snuggling with my dog.
Subscribe to learn more about SEO
By clicking “Subscribe” you agree to Semrush Privacy Policy and consent to Semrush using your contact data for newsletter purposes
More on this