首页 > 代码库 > 我用.htaccess做了些什么?
我用.htaccess做了些什么?
1、防图片盗链,减轻流量压力;
2、index.php 301转向到域名,有利于PR权重集中;
3、其它还不会,慢慢来……
我是如何做的?
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.zfmoney.com/ [R=301,L]
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !zfmoney.com [NC]
RewriteRule .*\.(gif|jpg|png)$ - [F]
</IfModule>
一些语句解释:
<IfModule mod_rewrite.c></IfModule>,判断mod_rewrite模块是否存在的,必须的。
RewriteEngine On,开启转向引擎。
RewriteBase /,转向基准目录。
RewriteCond %{REQUEST_FILENAME} !-f,如果文件存在,就直接访问文件,不进行下面的RewriteRule。
RewriteCond %{REQUEST_FILENAME} !-d,如果是这些后缀的文件,就直接访问文件,不进行RewriteRule。
RewriteRule ^(.*)$ /index.php/$1 [L],伪静态设置,去除链接中的/index.php/。
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.zfmoney.com/ [R=301,L]
这两句作用是,实现带http://www.zfmoney.com/index.php 的域名定向为http://www.zfmoney.com/ 形式。
RewriteCond %{HTTP_REFERER} !^$ [NC],允许直接输入地址访问图片
RewriteCond %{HTTP_REFERER} !zfmoney.com [NC],允许该域名显示图片
RewriteRule .*\.(gif|jpg|png)$ - [F],盗链网站不显示图片,直接显示红叉。
我用.htaccess做了些什么?