程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> Apache 相關 mod_rewrite ,RewriteCond,{HTTP_HOST}

Apache 相關 mod_rewrite ,RewriteCond,{HTTP_HOST}

編輯:關於PHP編程

1.給子域名加www標記 

%{HTTP_HOST} !^www\..? http:
這個規則抓取二級域名的%1變量,如果不是以www開始,那麼就加www,以前的域名以及{REQUEST_URI}會跟在其後。

2.去掉域名中的www標記 

.? http:

 

3.去掉www標記,但是保存子域名 

.? http:
這裡,當匹配到1%變量以後,子域名才會在%2(內部原子)中抓取到,而我們需要的正是這個%1變量。 

 



4.防止圖片盜鏈 

%{HTTP_REFERER} !^%{HTTP_REFERER} !^http:
RewriteRule \.(gif|jpg|png)$ -|jpg|%{HTTP_REFERER} !^%{HTTP_REFERER} !^http:
RewriteRule \.(gif|jpg|png)$ 你的圖片地址 [R=301,%{HTTP_REFERER} !^http:
RewriteRule \.(gif|jpg|png)$ - [F,

 

5.如果文件不存在重定向到404頁面 

%{REQUEST_FILENAME} !-%{REQUEST_FILENAME} !-.? /404.-f匹配的是存在的文件名,-d匹配的存在的路徑名。這段代碼在進行404重定向之前,會判斷你的文件名以及路徑名是否存在。你還可以在404頁面上加一個?url=^/?(.*)$ /404.php?url=$1

 



6.重命名目錄 

^/?old_directory/([a-z/.]+)$ new_directory/$1 [R=301,.”(注意不是代表得所有字符,前面有轉義符)來匹配文件的後綴名。 


7.將.html後綴名轉換成.php 

^/?([a-z/]+)\.html$ $1.=301,L]。 


8.創建無文件後綴名鏈接 

^/?([a-z]+)$ $1.%{REQUEST_FILENAME}.php -^/?([a-zA-Z0-9]+)$ $1.%{REQUEST_FILENAME}.html -^/?([a-zA-Z0-9]+)$ $1..php為後綴,這條規則將被執行。

 

9.檢查查詢變量裡的特定參數 

%{QUERY_STRING} !uniquekey=^/?script_that_requires_uniquekey\.php$ other_script.php [QSA,


10.刪除查詢變量 

.分配一個新的查詢參數(你可以用[QSA,.在文件名後面加一個“?”(比如index.php?)。符號“?”不會在浏覽器的地址欄裡顯示。

 

11.用新的格式展示當前URI 

%{QUERY_STRING} !%{QUERY_STRING} id=([-a-zA-Z0-9_+]+^/?index\.php$ %1? [R=301,^/?([-a-zA-Z0-9_+]+)$ index.php?marker &id=$1:
第二次匹配,marker被匹配,所以忽略第一條規則,這裡有一個“.”字符會出現在http:
注意,這個解決方案要求Apache的一些擴展功能,所以如果你的網站放於在共享主機中會遇到很多障礙。


12.保證安全服務啟用 

%{REQUEST_URI} ^secure_page\.%{HTTPS} !^/?(secure_page\.php)$ https:
以上規則測試{REQUEST_URI}值是否等於我們的安全頁代碼,並且{HTTPS}不等於on。如果這兩個條件同時滿足,請求將被重定向到安全服務URI.%{REQUEST_URI} ^secure_page\.%{SERVER_PORT} !^443^/?(secure_page\.php)$ https:

 

 

13.在特定的頁面上強制執行安全服務 

%{SERVER_PORT} !^443^/?(page1|page2|page3|page4|page5)$ https:
%{ SERVER_PORT } ^443!^/?(page6|page7|page8|page9):
                                                      

                                                                                 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved