既然是技术人员,那么实际的代码是必不可少的。鉴于目前很多的站点大多数使用的都是以PHP+MYSQL为主流的网站程序,那么网站的配置文件是必须受到我们格外重视的。本文为笔者收集和整理了几乎所有.htaccess文件的配置使用方法及其作用,收集来源于互联网。
【301永久重定向】
使用301永久重定向避免www与根域名的权重是非常好的习惯和方法,但是从http头来进行设置有亮点不好,一是增加网页的http响应次数,延长 页面的响应时间,二是比较容易设置成302临时重定向。所以笔者建议使用.htaccess文件来进行网站的301永久重定向。
为什么这是搜索引擎友好的呢?因为现在很多现代的搜索引擎都有能根据检查301永久转向来更新它现有的记录的功能。
代码如下(以笔者的博客www.AAA.com为例):
RewriteEngine on
RewriteCond %{http_host} ^AAA.com [NC]
RewriteRule ^(.*)$ http://www.AAA.com/$1 [L,R=301]
这是使访问AAA.com/的时候就会自动转到www.AAA.com,同样的,我们也可以反向设置,即访问www.AAA.com的时候自动转向至AAA.com:
RewriteEngine on
RewriteCond %{http_host} ^ www.AAA.com [NC]
RewriteRule ^(.*)$ http://AAA.com/$1 [L,R=301]
【自定义Error页面】
部分主机仅能在后台设置404错误页面,使用.htaccess文件可以对每个错误代码定制自己的错误页面。
代码如下:
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
【压缩文件】
通过压缩你网站上的静态资源及其他文件的体积来优化网站的访问速度,它可以通过压缩text, html, javascript, css, xml等文件。
代码如下
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javacript
AddOutputFilterByType DEFLATE application/x-javascript
【静态资源浏览器缓存设置】
对于那些并不会经常有变化更新的文件,设置静态文件缓存是非常非常重要的,它可以极大的提高页面访问速率,同样它也是Yahoo的YSLow评测标准的重要项目之一。
代码如下:
ExpiresActive on //开启缓存
ExpiresByType text/css "access 1 month"//css文件缓存1个月
ExpiresByType text/plain "access 2 days"//纯文本内容缓存2天
ExpiresByType text/html "access 2 days"//html文件缓存2天
ExpiresByType application/javascript "access 1 month"//JS文件缓存1个月
ExpiresByType image/jpeg "access 1 month"//jpeg图片缓存1个月
ExpiresByType image/x-icon "access 1 month"//icon缓存1个月
ExpiresByType image/gif "access 1 month"//gif图片缓存一个月
ExpiresByType image/png "access 1 month"//png图片缓存一个月
ExpiresByType image/ico "access 1 month"//ico缓存1个月
ExpiresByType application/pdf "access 1 month"//pdf文件缓存一个月
ExpiresByType application/x-shockwave-flash "access 1 month"//flash缓存一个月
ExpiresDefault "access 1 month"// 默认(未提及的可缓存文件)缓存1个月
【对某些文件类型禁止使用缓存】
网站有很多动态文件是不可以让浏览器缓存的,这样,我们就需要限定禁止缓存的文件。
代码如下:
Header unset Cache-Control
【允许访问与阻止IP访问】
你可以使用以下命令封禁一个IP地址,对于医疗行业来说,恶意点击的竞价推广及商务通的代码就可以使用这个来阻止竞争对手了。
代码如下:
deny from 000.000.000.000
这里的000.000.000.000是被封禁的IP地址,如果你只指明了其中的几个,则可以封禁整个网段的地址。如你输入210.10.56.*,则将封禁210.10.56.0~210.10.56.255的所有IP地址。
你也可以使用以下命令允许一个IP地址访问网站。
代码如下:
allow from 000.000.000.000
被允许的IP地址则为000.000.000.000,你可以象封禁IP地址一样封禁整个网段。
如果你想阻止所有人访问该目录,则可以这样。
代码如下:
deny from all
需要注意的是,不过这并不影响脚本程序使用这个目录下的文档,只是禁止用户访问(或许会有人想到用它来只允许蜘蛛访问吧)。
【图片防盗链】
下面的htaccess代码能够提高你的web服务器的安全水平。图片链接盗用保护非常有用,它能防止其他人偷盗使用你的服务器上的图片资源。
代码如下:
RewriteBase /
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?aqee.net/.*$ [NC]
RewriteRule .(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]
分享到:
相关推荐
ThinkPHP的去除URL中的index.php的.htaccess文件
Apache的Mode Rewrite模块和.htaccess文件配合是Apache服务器中两个非常重要的组件,特别是在网站开发和部署中。下面我们将详细介绍这两个组件的概念、配置方法和应用场景。 一、Apache的Mode Rewrite模块 Apache...
Apache 的.htaccess 文件是一种基于目录的配置文件,可以对特定的目录或子目录进行配置。通过修改 Apache 的配置文件 httpd.conf,可以开启.htaccess 文件的使用。下面将详细介绍如何开启.htaccess 文件的使用方法...
`.htaccess` 文件是Apache web服务器中的一个配置文件,它允许用户在网站根目录下进行局部配置,以实现一些高级功能,如URL重写、防盗链控制等。这个文件的全称是“分布式配置文件”,即分散在各个目录下的配置文件...
这些规则通常包含在.htaccess文件中,该文件位于网站的根目录或子目录下,可以对特定的目录应用规则。 然而,IIS默认并不支持.htaccess文件。为了在IIS上实现与Apache相似的功能,我们需要使用第三方工具,如...
随着网站的发展,URL 重写(Rewrite)已经成为一种必不可少的技术手段。.htaccess 文件是 Apache 服务器中的一种配置文件,用于实现 URL 重写、访问控制、缓存设置等功能。然而,Nginx 不支持原生的 .htaccess 文件...
`.htaccess` 文件是 Apache 服务器配置中一个非常重要的文件,它允许我们在网站根目录下进行站点级别的配置,而无需直接修改服务器的主配置文件。`.htaccess` 文件的使用可以极大地方便网站管理和优化,比如实现URL...
【信息安全技术基础:利用.htaccess文件上传.pptx】 在信息安全领域,理解并防范各种攻击手段至关重要。其中,.htaccess文件的滥用是常见的Web应用安全问题之一。.htaccess文件,全称是"HyperText Access",是...
只要和.htaccess文件同目录下就会被当成脚本解析; 用于利用某些Web服务器(尤其是Apache)的配置漏洞,以实现更高级的文件上传攻击或执行其他恶意操作。 文件类型解析:通过.htaccess修改服务器配置,可以让服务器...
".htaccess 文件和黑名单验证绕过" .htaccess 文件是 Apache 服务器中的一个配置文件,它负责相关目录下的网页配置。通过 .htaccess 文件,可以实现网页 301 重定向、自定义 404 错误页面、改变文件扩展名、允许/...
在Google上搜索的资料很多人都说nginx目前不支持.htaccess文件,我按照nginx的规则试验了一下,结果发现nginx是完全支持.htaccess文件的! 方法如下: 1. 在需要使用.htaccess文件的目录下新建一个.htaccess文件, ...
`.htaccess` 是 Apache 服务器中的一种配置文件,允许我们在特定的目录级别上自定义网页配置,包括 URL 重写规则。这使得我们可以对 URL 进行美化,使其看起来更加直观和用户友好。 在 ThinkPHP 框架中,由于采用...
.htaccess伪静态 适用方维分享系统以及其他php
### htaccess文件使用指南:掌握网站优化的关键 #### 引言 在当今互联网时代,网站的性能、安全性和用户体验成为了衡量其成功与否的重要标准。Apache服务器的`.htaccess`文件,作为一款分布式配置文件,拥有着强大...
mac电脑在xampp环境下搭建drupal使用的.htaccess配置文件,下载后将文件名改为.htaccess放在网站根目录即可。 如果网站不在根目录则放在对应级别的目录下 并修改htaccess文件119行和123行,将119行RewriteBase /...
包含了中国所有的IP段, 包括各地网通, 电信, 移动, 铁通, 教育网, 以及广电运营商, 公司自...使用方法很简单, Apache环境下利用.htaccess的命令deny, 你可以使用整理好的.htaccess文件, 然后放到你的网站根目录下即可.
Apache Web服务器的`.htaccess`文件是一个非常重要的配置文件,它允许用户在不修改服务器主配置的情况下,对网站进行各种自定义设置。这篇文章主要介绍了如何使用`.htaccess`文件实现一系列功能,包括阻止特定IP或...
.htaccess 文件,全称为 Hypertext Access,是Apache Web服务器配置中的一个非常重要的文件,它允许用户通过放置在网站根目录或者子目录下,来实现对服务器行为的部分控制,无需直接编辑主服务器配置。这种分布式...
1. .htaccess 文件的作用:.htaccess 文件允许用户在网站的根目录下进行配置,无需对整个服务器的配置文件进行修改,增加了灵活性和安全性。 2. 常见功能: - URL 重写:通过 RewriteEngine 和 RewriteRule 指令...
有外贸需求,需要防止爬虫,像中国和香港的IP,使禁止访问.htaccess,不是非常全,有一些作用,希望能给到大家帮助