18个有用的 .htaccess 文件使用技巧
.htaccess 是 Web 服务器 Apache 中特有的一个配置文件,操控着服务器上的许多行为,我们可以利用它来做许多事情,例如:设置访问权限,网址重定向,等等。本文向大家展示18条 .htaccess 文件的使用技巧,欢迎各位收藏备用。
温馨提示:在编辑 .htaccess 文件时,切记一定要先做好备份,因为这个文件相当重要,编辑错了可能会出现不可想像的后果!
1.去除博客网址中的 WWW.
据说这样做有利于 SEO。将下面的代码加入到 .htaccess 文件中,结果会把所有带 www. 的网址重定向到不带 www. 的网址。需要将 ijinfa.cn 改成您的域名哦!
|
1
2
3
|
RewriteEngine OnRewriteCond %{HTTP_HOST} !^ijinfa.cn$ [NC]RewriteRule ^(.*)$ http://ijinfa.cn/$1 [L,R=301] |
来源: css-tricks
2.强制使用WWW.格式的网址
将 www.ijinfa.cn 改成您的域名哦!
|
1
2
3
|
RewriteEngine OnRewriteCond %{HTTP_HOST} ^ijinfa.cn [NC]RewriteRule ^(.*)$ http://www.ijinfa.cn/$1 [L,R=301] |
来源: css-tricks
3.设置图片防盗链
|
1
2
3
4
5
6
|
RewriteEngine On#Replace ?mysite\.com/ with your blog urlRewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC]RewriteCond %{HTTP_REFERER} !^$#Replace /images/nohotlink.jpg with your "don't hotlink" image urlRewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L] |
4.重定向 WordPress 博客中的所有 feeds 到 feedburner
将 http://feedburner.com/yourfeed/ 换成您的 feedburner ID 号。
|
1
2
3
4
|
<IfModule mod_alias.c> RedirectMatch 301 /feed/(atom|rdf|rss|rss2)/?$ http://feedburner.com/yourfeed/ RedirectMatch 301 /comments/feed/(atom|rdf|rss|rss2)/?$ http://feedburner.com/yourfeed/</IfModule> |
来源: wprecipes
5.自定义错误页面
需要您自己创建一些 html 文件,访问者访问不存在的页面时就会显示这些 html 页面。
|
1
2
3
4
5
|
ErrorDocument 400 /errors/badrequest.htmlErrorDocument 401 /errors/authreqd.htmlErrorDocument 403 /errors/forbid.htmlErrorDocument 404 /errors/notfound.htmlErrorDocument 500 /errors/serverr.html |
来源: css-tricks
6.强制下载特定的文件
如果您的网站提供 mp3s, eps 或 xls 此类文件的下载,要是不想让浏览器来决定是否下载,利用如下代码可强制下载。
|
1
2
3
4
5
6
7
8
|
<Files *.xls> ForceType application/octet-stream Header set Content-Disposition attachment</Files><Files *.eps> ForceType application/octet-stream Header set Content-Disposition attachment</Files> |
来源: givegoodweb
7.PHP 错误记录
在您的服务器上创建一个 php_error.log 文件,再将以下代码放入 .htaccess 文件中,记得修改第七行中的文件路径。这是一条很有用的函数。
|
1
2
3
4
5
6
7
|
# display no errs to userphp_flag display_startup_errors offphp_flag display_errors offphp_flag html_errors off# log to filephp_flag log_errors onphp_value error_log /location/to/php_error.log |
来源: css-tricks
8.从网址中去除文件的扩展名
文件扩展名对网页开发者很有用,但对访问的人没用,您也不希望他们看到的,使用下面的方法将它们去掉。下面是去掉 html 扩展名的方法,可以改成 php, htm, asp 等。
|
1
2
3
4
5
|
RewriteEngine onRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME}\.<span style="color: #ff0000;">html</span> -fRewriteRule ^(.*)$ $1.<span style="color: #ff0000;">html</span># Replace html with your file extension, eg: php, htm, asp |
来源:eisabainyo
9.禁止自动列出系统文件目录
如果您网站某个文件目录不存在 index 文件,服务器会自动列出当前目录中的所有文件,通常您并不希望让别人看到,使用下面这句代码,可以禁止目录被列出。
|
1
|
Options -Indexes |
10.压缩静态文件,加速页面下载
这样会在一定程度上减少服务器带宽消耗,加快读者访问速度。
|
1
2
3
4
|
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascriptBrowserMatch ^Mozilla/4 gzip-only-text/htmlBrowserMatch ^Mozilla/4.0[678] no-gzipBrowserMatch bMSIE !no-gzip !gzip-only-text/html |
11.给文件自动添加utf-8编码
对于某些特定的文件,如 html, htm,css 或 js 等,有时可能会忘记在页面中加上一条 <meta http-equiv=”Content-Type”> 编码标签,为防止出现编码问题,可让页面自动生成这样的标签。
|
1
2
3
|
<FilesMatch "\.(htm|html|css|js)$">ForceType 'text/html; charset=UTF-8'</FilesMatch> |
来源: askapache
12.去除 WordPress 网址中的 /category/ 目录名称
默认情况下, WordPress 分类目录的永久链接会显示如下:
|
1
|
http://www.catswhocode.com/blog/category/wordpress |
其中的目录名 /category/ 毫无用处,可以去掉,只需在 .htaccess 文件中加上下面这一行(其中http://www.yourblog.com/ 是您的域名):
|
1
|
RewriteRule ^category/(.+)$ http://www.yourblog.com/$1 [R=301,L] |
将修改后的文件保存,分类目录的链接形式就会变成如下:
|
1
|
http://www.yourblog.com/blog/wordpress |
来源: wprecipes
13.使用浏览器缓存
一个有效加快博客速度的方法就是,强制浏览器缓存。在 .htaccess 文件中添加以下语句:
|
1
2
3
4
5
6
7
|
FileETag MTime Size<ifmodule mod_expires.c> <filesmatch "\.(jpg|gif|png|css|js)$"> ExpiresActive on ExpiresDefault "access plus 1 year" </filesmatch></ifmodule> |
14.将带发表日期和日志名称的永久链接重定向到 /%postname%/ 格式
这个 /%postname%/ 就是日志名称,也就是使用日志名称作为永久链接。首先登录 WordPress 后台,到设置→ 永久链接,在自定义永久链接这一项中填上
/%postname%/,之后您的博客永久链接会变成如下这样:
|
1
|
http://www.yourblog.com/name-of-the-post |
接着下来重要的一步,利用301重定向将所有旧的链接全部指向上面所建新链接。打开 WordPress 根目录下的 .htaccess 文件,加入以下一行语句:
|
1
|
RedirectMatch 301 /([0-9]+)/([0-9]+)/([0-9]+)/(.*)$ http://www.domain.com/$4 |
搞定了!
来源: wprecipes
15.拒绝非人为的发布评论
原理是禁止(机器人)非人为访问 wp-comments-post.php 文件, 可有效防止大量的垃圾评论。将第四行的 yourblog.com 改成您的网址即可。
|
1
2
3
4
5
6
|
RewriteEngine OnRewriteCond %{REQUEST_METHOD} POSTRewriteCond %{REQUEST_URI} .wp-comments-post\.php*RewriteCond %{HTTP_REFERER} !.*yourblog.com.* [OR]RewriteCond %{HTTP_USER_AGENT} ^$RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L] |
来源: wprecipes
16.将访问者重定向到一个维护模式页面
在升级博客或者修改主题的时候,让访客看到这些变化(特别是代码错误),总不是件好事,甚至可能引发安全问题,这时,就有必要将所有访问者引向一个指定的维护模式页面。下面的语法中使用302重定向,将读者引导到一个叫做“maintenance.html”的页面,第三行中是您自己博客的IP地址。
|
1
2
3
4
|
RewriteEngine onRewriteCond %{REQUEST_URI} !/maintenance.html$RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123RewriteRule $ /maintenance.html [R=302,L] |
来源: woueb
17.仅允许您自己的 IP 访问 wp-admin 目录
除非是多作者博客,如果您使用的是静态IP,可以设定只有您自己可以访问 wp-admin 目录,使用“allow from xx.xx.xxx.xx“ 这样的格式,多个静态IP各占一行。
|
1
2
3
4
5
6
7
8
9
|
AuthUserFile /dev/nullAuthGroupFile /dev/nullAuthName "Example Access Control"AuthType Basic<LIMIT GET>order allow, denydeny from allallow from xx.xx.xx.xx</LIMIT> |
来源: reubenyau
18.将特定的 IP 列入黑名单
使用“deny from xxx.xx.xxx.xxx”这样的格式,不同的 IP 各占五行,这种方法可用于防止垃圾评论或某些您想禁止访问的访客。
|
1
2
3
4
5
|
<Limit GET POST>order allow,denydeny from 222.69.116.166allow from all</Limit> |
18个有用的 .htaccess 文件使用技巧的更多相关文章
- Apache 中 .htaccess 文件设置技巧16则
.htaccess 文件 (Hypertext Access file) 是Apache Web服务器的一个非常强大的配置文件,对于这个文件,Apache有一堆参数可以让你配置出几乎随心所欲的功能.. ...
- iis6上使用.htaccess文件,ISAPI_Rewrite的安装及使用
在Apache上很有用的.htaccess文件在IIS上就没有,要想实现类似的跳转功能可以使用ISAPI_Rewrite来代替,这是一个专门为IIS设置的工具,目的就是代替.htaccess实现很多功 ...
- apache .htaccess文件详解和配置技巧总结
一..htaccess的基本作用 .htaccess是一个纯文本文件,它里面存放着Apache服务器配置相关的指令. .htaccess主要的作用有:URL重写.自定义错误页面.MIME类 ...
- 简单实用的.htaccess文件配置
.htaccess 文件 (Hypertext Access file) 是Apache Web服务器的一个非常强大的配置文件,对于这个文件,Apache有一堆参数可以让你配置出几乎随心所欲的功能.. ...
- .htaccess文件详解
启用.htaccess,需要修改httpd.conf,启用AllowOverride,并可以用AllowOverride限制特定命令的使用 笼统地来说,.htaccess可以帮我们实现包括:文件夹密码 ...
- .htaccess 文件的使用
用于服务器对文件夹的控制 官方解释为 :分布式配置文件 ,提供了针对目录改变配置的方法; 项目可以有多个这样的配置文件,子目录文件会覆盖父目录的配置 在apache(这里泛指服务器)中,/conf/v ...
- apache的 .htaccess文件的常用配置
使用.htaccess文件需要注意的地方: 1.找到配置文件httpd.conf,将override的值改成all.如下图:(如果不设置成all,apache将忽略.htaccess文件)
- .htaccess文件的详解以及404页面的设置
打开记事本,写入以下代码: ErrorDocument 404 /404.html保存成.htaccess文件上传到网站的根目录. /404.html是目录名和文件名,可以改成自己的名字.QUOTE: ...
- WCF技术剖析之三十:一个很有用的WCF调用编程技巧[下篇]
原文:WCF技术剖析之三十:一个很有用的WCF调用编程技巧[下篇] 在<上篇>中,我通过使用Delegate的方式解决了服务调用过程中的异常处理以及对服务代理的关闭.对于<WCF技术 ...
随机推荐
- 第一章TP-Link 703N刷OpenWrt
1)下载编译好的固件 openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin openwrt-ar71xx-generic-tl-wr703n ...
- 钉钉开发笔记(3)MySQL的配置
最近在编写web的过程中,经常需要与后台工作人员互动.由于比较麻烦.没有效率. 就果断的请教了,公司的后台大牛,学习下数据库的一些简单操作,现在就把利用MySQL连接服务器, 进行可视化操作的简单步骤 ...
- 【原创】[PS技巧]如何制作翘角纸条的阴影效果
(从已经死了一次又一次终于挂掉的百度空间人工抢救出来的,发表日期 2014-05-19) 在网页设计中经常会用到翘角纸条的效果.如:百度空间首页: pic.1 下面我详细讲解一下这个效果使用PS如何制 ...
- (1) css的核心基础
css的核心基础 1.css的基本语法在具体使用css之前,请各位兄弟姐妹先思考一个生活中的问题,一般情况下我们是如何描述一个人的呢? 小明{ 民族:汉族: 性格:温柔: 性别:男: 体重:68kg ...
- java.util.Date转java.sql.Date丢失时间问题
java.sql.Date 只存储日期数据不存储时间数据// 会丢失时间数据preparedStatement.setDate(1, new java.sql.Date(date.getTime()) ...
- TAxThread - Inter thread message based communication - Delphi
http://www.cybletter.com/index.php?id=3 http://www.cybletter.com/index.php?id=30 Source Code http:// ...
- On-board diagnostics connector SAE J1962
http://en.wikipedia.org/wiki/On-board_diagnostics#Standard_interfaces OBD-II diagnostic connector Th ...
- hadoop备战:hadoop,hbase兼容版本号汇总
Hbase的安装须要考虑Hadoop的版本号,即兼容性.有不足的希望能指出. 下面考究官网得到的,关于hadoop版本号和hbase版本号可到下面网址中下载:http://mirror.bit.edu ...
- constraint使用方法总结
主要就是添加约束的 下面几种约束 .并 一一列举: 1.主键约束: 要对一个列加主键约束的话,这列就必需要满足的条件就是分空 由于主键约束:就是对一个列进行了约束,约束为(非空.不反复) 下面是代码 ...
- linux 磁盘管理学习笔记
磁盘管理命令:fdisk df du fdisk #查看硬盘分区表 df #查看分区使用情况 du #查看文件占用空间情况lvdisplay #逻辑分区 [1] 李洋.df.du.fdisk:Linu ...