Home >Backend Development >PHP Tutorial >Solution to using Apache's htaccess to prevent images from being linked_PHP Tutorial

Solution to using Apache's htaccess to prevent images from being linked_PHP Tutorial

WBOY
WBOYOriginal
2016-07-21 15:11:07950browse

Method 1:
The required commands are as follows:

Copy the code The code is as follows:

RewriteEngine on

RewriteCond %{ HTTP_REFERER } !^$

RewriteCond %{ HTTP_REFERER } !^http://(www.)?simue.com /.*$ [NC ]

RewriteRule .(gif &line;jpg)$ - [F]

If you think it doesn’t look good to have a skylight open on someone else’s page, you can use a picture Instead:

View code
Copy code The code is as follows:

RewriteEngine on

RewriteCond %{ HTTP_REFERER } !^$

RewriteCond %{ HTTP_REFERER } !^http://(www.)?simue.com/.*$ [NC]

RewriteRule .(gif &line;jpg)$ http://www.simue.com /Replacement image file name [R,L]
It should be noted that if the created .htaccess is uploaded to the server through FTP , the transmission mode should be ASCII instead of Binary. After uploading to the server, its attributes should be modified to 644 or "RW-R–R–" through CHMOD. In this way, it can be ensured that the server can be used and cannot be modified through the browser. Of course, there are also certain issues with the readable attributes of .htaccess. Risk: This could allow an attacker to figure out what you want to protect or the location of the authentication file - the solution is to place the authentication file .htpasswd outside the root of the website so it cannot be found over the network.

Method 2:
Copy the code The code is as follows:

View code 01 RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$ [NC]

RewriteCond %{HTTP_REFERER} !simue.com [NC]

RewriteCond %{HTTP_REFERER } !baidu.com [NC]

RewriteCond %{HTTP_REFERER} !google.com [NC]

RewriteRule .*.(gif|jpg)$ http://www.simue. com /no.png [R,NC,L]

Briefly explain the above statement:
1. RewriteCond %{HTTP_REFERER} !^$ [NC]

Allow access to empty "HTTP_REFERER", which allows the display of image files when the user directly enters the image address in the browser address bar. Generally speaking, this is optional, but it is recommended to set it this way. If it is forced to have "HTTP_REFERER" to access, it may cause certain problems, such as when users access through a proxy server.

2. RewriteCond %{HTTP_REFERER} !simue.com [NC]

Set the HTTP sources allowed to be accessed, including our website itself, Google, Baidu, etc.

3. RewriteRule .*.(gif|jpg|png)$ http://www.simue.com/no.png [R,NC,L]

Define the image to be replaced when hotlinked, so that all webpages with jpg, gif, png and other files that are hotlinked will display the no.png file in the root directory. Note: Do not place the replaced image in the directory where anti-hotlinking is set, and the smaller the file size of the image, the better. Of course, you can also use the following statement instead of setting a replacement image:

RewriteRule .*.(gif|jpg|png)$ - [F]

4. Explain R, NC and L

R means turn
NC means not case sensitive
L is used to indicate that this turn ends here, and subsequent turns will not be affected by the previous judgment statement

5. File types to prevent hotlinking

In the above example, they are gif, jpg, and png. If necessary, you can change or add other file types, such as rar, swf, etc. Use "|" to separate different file extensions.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/326960.htmlTechArticleMethod 1: The required commands are as follows: Copy the code as follows: RewriteEngine on RewriteCond %{ HTTP_REFERER } !^$ RewriteCond %{ HTTP_REFERER } !^http://(www.)?simue.com /.*$...
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