常用的.htaccess代码
H 文件(Hypertext Access file)是Apache Web服务器的一个非常强大的配置文件,对于这个文件,Apache有一堆参数可以让你配置出几乎随心所欲的功能。
1.使用.htaccess挡掉搜寻引擎机蜘蛛
2.使用.htaccess封锁某国家IP网段
3.使用.htaccess防止图片、文件盗链
4.使用.htaccess来保护主机下的目录与文件
5.使用.htaccess 自定义的出错页面
6.把某些特殊的IP地址的请求重定向到别的站点
7.把老的域名转像新的域名
8.更改默认首页/默认文档顺序
#1 301重定向老域名到新域名
# redirect from old domain to new domain RewriteEngine On RewriteRule ^(.*) $http://www.yourdomain.com/$1 [R=301,L] |
#2 设置www重定向
带www和不带www的域名都能访问同一个网站,在SEO方面就存在分散权重的弊端,如果做了www重定向,搜索引擎会把不带www域名的页面权重全部带到有www的页面上来。
所以建议在.htaccess文件里添加以下代码,目的是不让你的网站权重分散,下面的代码我是以一灯博客为例,请大家自行修改成你外贸网站的域名。
- RewriteEngine on
- RewriteCond %{HTTP_HOST} ^seosteven.com [NC]
- RewriteRule ^(.*)$ http://www.seosteven.com/$1 [R=301,L]
#3 去除 URL 中的 www
出于 SEO 考虑,你可能期望移除 URL 中的 www 前缀。以下代码实现了这个功能,并将所有带 www 的地址重定向到无 www 一级域名。
- RewriteEngine On
- RewriteCond %{HTTP_HOST} !^youdomain.com$ [NC]
- RewriteRule ^(.*)$ http://yourdomain.com/$1 [L,R=301]
#4 强制要求使用 HTTPS 访问
通过以下脚本可以强制整个网站必须使用 https 方式访问:
1
2
3
|
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} URL 重写 例如要将 product.php?id=12 重写为 product-12.html
将 product.php?id=12 重写为 product/ipod-nano/12.html
重定向没有 www 到有 www 的 URL 地址:
重写 yoursite.com/user.php?username=xyz 到 yoursite.com/xyz
重定向某个域名到一个 public_html 里新的子文件夹:
10. 阻止列出目录文件 使用下面代码可以防止列表目录里的所有文件:
或者
11. 添加新的 MIME-Types MIME-types 依赖于文件的扩展名,未能被识别的文件扩展名会当成文本数据传输
|
#5 防盗链
你不希望别人网站引用你站内的图片、css 等静态文件,也就是传说中的防盗链,可以使用如下脚本:
1
2
3
4
|
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{REQUEST_URI} !^/(wp-login.php|wp-admin/|wp-content/plugins/|wp-includes/).* [NC]
RewriteCond %{HTTP_REFERER} !^http://www.askapache.com.*$ [NC]
RewriteRule \.(ico|pdf|flv|jpg|jpeg|mp3|mpg|mp4|mov|wav|wmv|png|gif|swf|css|js)$ – [F,NS,L]
|
推荐阅读: