建站基础 / 网站优化

网站优化常用的伪静态规则-Apache篇

ybq680126 · 12月22日 · 2019年

Apache环境中伪静态规则文件为.htaccess

在网站优化和网站建设中,难免会用到一些伪静态规则,比如用301跳转规则提高主域名权重,404错误页面的定义规则等等,下面我们讲解下,对于Apache环境中伪静态规则最常见的几个例子, Apache环境中规则文件为.htaccess,通常放在网站根部目录,我们一般就是修改这个文件,前提是需要在Apache配置文件下开启伪静态功能,一般来说主机商默认都是开启的,见附图!

.htaccess 文件

.htaccess文件的作用

开始之前我们需要简单了解下这个文件的,概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。Unix、Linux系统或者是任何版本的Apache Web服务器都是支持.htaccess的,但是有的主机服务商可能不允许你自定义自己的.htaccess文件。启用.htaccess,需要修改httpd.conf,启用AllowOverride,并可以用AllowOverride限制特定命令的使用。如果需要使用.htaccess以外的其他文件名,可以用AccessFileName指令来改变。例如,需要使用.config ,则可以在服务器配置文件中按以下方法配置:AccessFileName .config 。笼统地说,.htaccess可以帮我们实现包括:文件夹密码保护、用户自动重定向、自定义错误页面、改变你的文件扩展名、封禁特定IP地址的用户、只允许特定IP地址的用户、禁止目录列表,以及使用其他文件作为index文件等一些功能。

htaccess文件的作用

接下来我们开始进入主题,下面是一些最常用的伪静态规则,希望大家可以灵活运用

1、开启/关闭拼写检查(关闭后会区分大小写)

CheckSpelling On #开启  
CheckSpelling Off #关闭 通常来说关闭拼写检查可以解决一下报错

2、禁止/只允许特定IP访问

(1) 禁止单个IP访问,例如192.168.1.1

Order Allow,Deny  
Allow from all  
Deny from 192.168.1.1  

(2) 禁止IP段访问,例如192.168.1.0/24、192.168.0.0/16

Order Allow,Deny

Allow from all

Deny from 192.168.1

Deny from 192.168

(3) 只允许特定IP访问,例如192.168.1.1

Order Allow,Deny

Deny from all

Allow from 192.168.1.1

3、防止目录浏览

Options All -Indexes

4、自定义错误页面

ErrorDocument 403 /403.html

ErrorDocument 404 /404.html

ErrorDocument 500 /500.html

5、设置默认首页

DirectoryIndex 123.html

6、屏蔽恶意蜘蛛(User Agent)

SetEnvIfNoCase User-Agent "^Baidu" bad_bot

SetEnvIfNoCase User-Agent "^sogou" bad_bot

SetEnvIfNoCase User-Agent "^Bloghoo" bad_bot

SetEnvIfNoCase User-Agent "^Scooter" bad_bot

Deny from env=bad_bot

7、 设置防盗链

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$ [NC]

RewriteCond %{HTTP_REFERER} !google.com [NC] #白名单域名,谷歌

RewriteCond %{HTTP_REFERER} !baidu.com [NC] #白名单域名,百度

RewriteCond %{HTTP_REFERER} !test.com [NC] #白名单域名,自己的域名添加上

RewriteRule .*\.(jpg|gif|png|jpeg)$ http://deny.com [R,NC,L] #不在白名单的访问跳转到特定url上

8、禁止访问特定目录

例如拒绝任何人访问abc目录,那么我们可以在abc目录下创建.htaccess,写入一下内容:

deny from all

9、http跳转到https

RewriteCond %{SERVER_PORT} !^443$  
RewriteRule ^.* https://%{SERVER_NAME}%{REQUEST_URI} [L,R]举报/反馈

以上就是网站优化和网站建设中在Apache环境下平常用的最多伪静态规则,建议大家可以收藏起来,用的时候可以很方便的使用,如果您有疑问可以在文章下发给我们留言,收到留言后我们会第一时间给您回复!

相关文章
暂无相关文章!
0 条回应