1.去掉域名中的www标记
复制代码 代码如下:RewriteCond %{HTTP_HOST} !^jb51/.net$ [NC]
RewriteRule .? http://jb51.net%{REQUEST_URI} [R=301,L]
2.去掉www标记,但是保存子域名
复制代码 代码如下:RewriteCond %{HTTP_HOST} ^www/.(([a-z0-9_]+/.)?jb51/.net)$ [NC]
RewriteRule .? http://%1%{REQUEST_URI} [R=301,L]
这里,当匹配到1%变量以后,子域名才会在%2(内部原子)中抓取到,而我们需要的正是这个%1变量。
3.给子域名加www标记
复制代码 代码如下:RewriteCond %{HTTP_HOST} ^([a-z.]+)?jb51/.net$ [NC]
RewriteCond %{HTTP_HOST} !^www/. [NC]
RewriteRule .? http://www.%1jb51.net%{REQUEST_URI} [R=301,L]
这个规则抓取二级域名的%1变量,如果不是以www开始,那么就加www,以前的域名以及{REQUEST_URI}会跟在其后。
4.防止图片盗链
一些站长不择手段的将你的图片盗链在他们网站上,耗费你的带宽。你可以加一下代码阻止这种行为。
复制代码 代码如下:RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www/.)?jb51/.net/ [NC]
RewriteRule /.(gif|jpg|png)$ [F]
如果{HTTP_REFERER}值不为空,或者不是来自你自己的域名,这个规则用[F]FLAG阻止以gif|jpg|png 结尾的URL
如果对这种盗链你是坚决鄙视的,你还可以改变图片,让访问盗链网站的用户知道该网站正在盗用你的图片。
复制代码 代码如下:RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www/.)?jb51/.net/.*$ [NC]
RewriteRule /.(gif|jpg|png)$ 你的图片地址 [R=301,L]
除了阻止图片盗链链接,以上规则将其盗链的图片全部替换成了你设置的图片。
你还可以阻止特定域名盗链你的图片:
复制代码 代码如下:RewriteCond %{HTTP_REFERER} !^http://(www/.)?leech_site/.net/ [NC]
RewriteRule /.(gif|jpg|png)$ [F,L]
这个规则将阻止域名黑名单上所有的图片链接请求。
当然以上这些规则都是以{HTTP_REFERER}获取域名为基础的,如果你想改用成IP地址,用{REMOTE_ADDR}就可以了。
5.如果文件不存在重定向到404页面
如果你的主机没有提供404页面重定向服务,那么我们自己创建。
复制代码 代码如下:RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .? /404.php [L]
这里-f匹配的是存在的文件名,-d匹配的存在的路径名。这段代码在进行404重定向之前,会判断你的文件名以及路径名是否存在。你还可以在404页面上加一个?url=$1参数:
复制代码 代码如下:RewriteRule ^/?(.*)$ /404.php?url=$1 [L]
这样,你的404页面就可以做一些其他的事情,例如默认信心,发一个邮件提醒,加一个搜索,等等。
6.重命名目录
如果你想在网站上重命名目录,试试这个:
复制代码 代码如下:RewriteRule ^/?old_directory/([a-z/.]+)$ new_directory/$1 [R=301,L]
在规则里我添加了一个“.”(注意不是代表得所有字符,前面有转义符)来匹配文件的后缀名。
7.将.html后缀名转换成.php
前提是.html文件能继续访问的情况下,更新你的网站链接。
复制代码 代码如下:RewriteRule ^/?([a-z/]+)/.html$ $1.php [L]
这不是一个网页重定向,所以访问者是不可见的。让他作为一个永久重定向(可见的),将FLAG修改[R=301,L]。
8.创建无文件后缀名链接
如果你想使你的PHP网站的链接更加简洁易记-或者隐藏文件的后缀名,试试这个:
新闻热点
疑难解答