Home  >  Article  >  Backend Development  >  16 .htaccess file setting tips that programmers don’t know

16 .htaccess file setting tips that programmers don’t know

WBOY
WBOYOriginal
2016-07-25 09:03:18948browse
Reprinted original text address: http://www.jb100.net/html/content-22-741-1.html

The .htaccess file (Hypertext Access file) is a very powerful configuration file for the Apache web server. For this file, Apache has a bunch of parameters that allow you to configure almost any function you want. The .htaccess configuration file adheres to the Unix culture of using an ASCII plain text file to configure your website's access policy.

This article includes 16 very useful tips. In addition, because .htaccess is a very powerful configuration file, a slight grammatical error can cause your entire website to malfunction. Therefore, when you modify or replace the original file, be sure to back up the old file so that It can be easily restored when problems occur.

1. Use .htaccess to create a custom error page. This is an extremely simple matter for Linux Apache. You can easily accomplish this using the following .htaccess syntax. (Put .htaccess in your website root directory)

ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php

2. Set the time zone of the website

SetEnv TZ America/Houston

3. Block IP List
Sometimes, you need to block access by IP address. Whether it's for an IP address or a network segment, it's a very simple thing, as shown below:

allow from all
deny from 145.186.14.122
deny from 124.15

Apache will return a 403 error for rejected IPs.

4. Transfer some old links to new links - Search Engine Optimization SEO

Redirect 301 /d/file.htmlhttp://www.htaccesselite.com/r/file.html

5. Set up email for the server administrator.

ServerSignature Email
SetEnv SERVER_ADMINdefault@domain.com

6. Use .htaccess to prevent hotlinking. If an image on your website is referenced by numerous other websites, this is likely to cause a decrease in the performance of your server. Use the following code to protect certain popular links from being referenced too much.

Options +FollowSymlinks
#ProtectHotlinking
RewriteEngineOn
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?domainname.com/[nc]
RewriteRule .*.(gif|jpg|png)$[nc]

7. Block all requests from User Agent

## .htaccess Code :: BEGIN
## Block Bad Bots by user-Agent
SetEnvIfNoCase user-Agent ^FrontPage [NC,OR]
SetEnvIfNoCase user-Agent ^Java.* [NC,OR]
SetEnvIfNoCase user-Agent ^Microsoft.URL [NC,OR]
SetEnvIfNoCase user-Agent ^MSFrontPage [NC,OR]
SetEnvIfNoCase user-Agent ^Offline.Explorer [NC,OR]
SetEnvIfNoCase user-Agent ^[Ww]eb[Bb]andit [NC,OR]
SetEnvIfNoCase user-Agent ^Zeus [NC]

Order Allow,Deny
Allow from all
Deny from env=bad_bot

## .htaccess Code :: END

8. Redirect requests from certain special IP addresses to other sites

ErrorDocument 403http://www.youdomain.com
Order deny,allow
Deny from all
Allow from 124.34.48.165
Allow from 102.54.68.123

9. Find the file directly instead of downloading it – Usually, when we open a file on the Internet, a dialog box will always appear asking us whether to download or open it directly. Using the following settings, this problem will not occur and we will open it directly.

AddType application/octet-stream .pdf
AddType application/octet-stream .zip
AddType application/octet-stream .mov

10. Change the file type – The following example can make any file be interpreted by the server as PHP. For example: myphp, cgi, phtml, etc.

ForceType application/x-httpd-php
SetHandler application/x-httpd-php

11. Block access to .htaccess files

# secure htaccess file

order allow,deny
deny from all
12. Protect files on the server from being accessed

# prevent access of a certain fileorder allow,deny
deny from all
13. Block directory browsing

#disable directory browsing
Options All -Indexes

14. Set default homepage

# serve alternate default index page
DirectoryIndex about.html

15. Password Authentication – You can create a file for authentication. Here is an example:

# to protect a file

AuthType Basic
AuthName “Prompt”
AuthUserFile /home/path/.htpasswd
Require valid-user

# password-protect a directory
resides
AuthType basic
AuthName “This directory is protected”
AuthUserFile /home/path/.htpasswd
AuthGroupFile /dev/null
Require valid-user

16. Convert old domain name to new domain name

# redirect from old domain to new domain
RewriteEngineOn
RewriteRule ^(.*)$http://www.yourdomain.com/$1[R=301,L]

Reprinted original text address: http://www.jb100.net/html/content-22-741-1.html



Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn