Apache Rewrite 擬靜態

來源:互聯網
上載者:User

標籤:訪問   127.0.0.1   大小寫   gone   mod   頁面   操作   .htaccess   開關   

mod_rewrite是Apache的一個非常強大的功能,它可以實現偽靜態頁面。一些防盜鏈就是通過該方法做到的。

00x1 啟動rewrite引擎

  • RewriteEndine on

可以使用兩種方式來寫rewite,一種是直接在httpd.conf當中寫。一種則是寫在.htaccess中。

 00x2 如何啟用apache rewrite?

  • 在httpd.conf當中找到“LoadModule rewrite_module modules/mod_rewrite.so”將#號去除即開啟了apache rewrite。
  • 開啟.htaccess,依舊是在httpd.conf檔案當中的AllowOverride all的“#”號去除即可。

可以在phpinfo介面當中查看rewrite開啟資訊,Loaded Modules處查看:mod_rewrite 如存在即已開啟。

00x3 書寫Rewrite代碼:

  1. 如果要直接在httpd.conf中輸入的話,則輸入在“</IfModule>”標籤結尾處。

       

  2.在htaccess書寫。在windows當中是不允許建立這樣的檔案,那麼我們要如何建立呢?先建立一個htaccess.txt可以進入cmd,鍵入:rename htaccess.txt .htaccess便可以產生一個.htaccess檔案。簡單的說就是建一個txt然後使用cmd重新命名為htaccess即可。

00x4 Rewrite規則學習

  建立立好一個.htaccess檔案了以後,使用記事本開啟。開始學習Rewrite規則。

開始第一個案例:

RewriteEngine on #rewriteengine為重寫引擎開關on為開啟off為關閉RewriteRule ^(.*?).html 1.php?id=$1

Rewriterule是重寫規則。後面的是正則。

1.php的代碼:

<?php echo $_GET[‘id‘]; ?>

寫好rewrite了以後重啟apache。然後訪問127.0.0.1/t_test.html

輸出的效果如下所示:

成功的實現了偽靜態。

這種僅僅只是以檔案的方式寫偽靜態,我們還可以以檔案夾的方式寫

直接在剛才的基礎上使用正則($)的作用來操作。代碼如下:

RewriteEngine onRewriteRule ^t_(.*)/$ 1.php?id=$1

可以隨便你怎麼寫就怎麼寫。

 

 

相關知識

mod_rewrite 規則修正符

  • 1) R 強制外部重新導向
  • 2) F 禁用URL,返回403HTTP狀態代碼。
  • 3) G 強制URL為GONE,返回410HTTP狀態代碼。
  • 4) P 強制使用代理轉寄。
  • 5) L 表明當前規則是最後一條規則,停止分析以後規則的重寫。
  • 6) N 重新從第一條規則開始運行重寫過程。
  • 7) C 與下一條規則關聯8) T=MIME-type(force MIME type) 強制MIME類型
  • 9) NS 只用於不是內部子請求
  • 10) NC 不區分大小寫
  • 11) QSA 追加請求字串
  • 12) NE 不在輸出轉義特殊字元 \%3d$1 等價於 =$1

 

Apache Rewrite 擬靜態

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.