apache mod_rewrite - URL Rewriting

2009-05-13 15:14:51来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


[url=javascript:;]apache[/url]
設定檔
apache預設已有mod_rewire 模組: (httpd.conf 相關設定)
預設也已啟用.
LoadModule rewrite_module libexec/apache/mod_rewrite.so
AddModule
[url=javascript:;]mod_rewrite[/url]
.c
用法:在希望作用的資料夾下,  新增.htaccess檔案
RewriteCond:  表示新的規則開始
參數:
[NC] (不分字母大小寫)
[OR] (或者, 用來與下一規則連結用)
RewriteRule:   重新導向的規則
常用參數: (其他請自行參考apache手冊)
[R]   重新導向
[F]   重新導向到 403 forbidden 頁面
[L]   表示這是最後一條規則
常用到的規則表示式:
.           任何單一字母
[chars]   chars字母中的其中一個
[^chars] 不包含 chars 的字母
?           0個或是1個字母
*           0個或是N個字母
+          1個或是N個字母
^          表示一行的開始
$           表示一行的結束
\            跳脫字元(顯示符號本身)
常見的用法:
(A)重新導向到正確的網址:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^ohaha.ks.edu.tw$ [NC]
RewriteRule ^(.*)$ http://ohaha.ks.edu.tw/$1 [R,L]
說明:
若使用者瀏覽頁是www.ohaha.ks.edu.tw/ooo.php 重導向至 http://ohaha.ks.edu.tw/ooo.php
(B)禁止盜連檔案,並且顯示相關訊息給盜連者.
RewriteEngine on
SetEnvIf referer "^$" local_ref=1
RewriteCond %{HTTP_REFERER} !^http://ohaha.ks.edu.tw/.*$ [NC]
RewriteRule .*\.(jpg|gif|png|iso|rar|zip|tar.gz)$ /nohotlink.png [R,NC]
說明:
若使用者參照頁面不是空的, (第一行)
也不包含 http://ohaha.ks.edu.tw/  (第二行)
且瀏覽 jpg gif ...等圖檔, 則以 /nohotlink.png 圖檔替代顯示這些遭盜連檔案. (第三行)
補充:
此時若有盜連者,可以在http-access log檔案可以發現類似如下紀錄:
使用者的IP位址 - - [30/Jun/2008:16:57:41 +0800] "GET /nohotlink.png HTTP/1.1" 304 - "盜連的頁面來源" "Mozilla/4.0 (compatible; MSIE 7.0; W indows NT 5.1)"

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/4206/showart_1358832.html

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Squid请求处理的典型流程

下一篇:qemu基础介绍