欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Apache偽靜態(tài)Rewrite詳解

 更新時(shí)間:2014年03月10日 11:32:23   作者:  
這篇文章主要介紹了Apache偽靜態(tài)Rewrite的相關(guān)知識(shí)以及使用方法和使用實(shí)例,需要的朋友可以參考下

一、Rewrite規(guī)則簡(jiǎn)介:
Rewirte主要的功能就是實(shí)現(xiàn)URL的跳轉(zhuǎn),它的正則表達(dá)式是基于Perl語(yǔ)言??苫诜?wù)器級(jí)的(httpd.conf)和目錄級(jí)的 (.htaccess)兩種方式。如果要想用到rewrite模塊,必須先安裝或加載rewrite模塊。方法有兩種一種是編譯apache的時(shí)候就直接 安裝rewrite模塊,別一種是編譯apache時(shí)以DSO模式安裝apache,然后再利用源碼和apxs來(lái)安裝rewrite模塊。
二、在Apache配置中啟用Rewrite
打開(kāi)配置文件httpd.conf:

復(fù)制代碼 代碼如下:

1.啟用rewrite
# LoadModule rewrite_module modules/mod_rewrite.so 去除前面的 #

2.啟用.htaccess
在虛擬機(jī)配置項(xiàng)中
AllowOverride None    修改為: AllowOverride All


二、Rewrite基本寫(xiě)法
服務(wù)器有配置文件不可能由我們來(lái)改,所以大多情況下要在網(wǎng)站的根目錄下建一個(gè).htaccess文件。
復(fù)制代碼 代碼如下:

RewriteEngine on    //啟動(dòng)rewrite引擎
RewriteRule ^/index([0-9]*).html$ /index.php?id=$1   //“([0-9]*)” 代表范圍 用(.*)代表所有,下同。
RewriteRule ^/index([0-9]*)/$ /index.php?id=$1 [R]   //虛擬目錄

三、Apache mod_rewrite規(guī)則重寫(xiě)的標(biāo)志一覽
1) R[=code](force redirect) 強(qiáng)制外部重定向
強(qiáng)制在替代字符串加上http://thishost[:thisport]/前綴重定向到外部的URL.如果code不指定,將用缺省的302 HTTP狀態(tài)碼。
2) F(force URL to be forbidden)禁用URL,返回403HTTP狀態(tài)碼。
3) G(force URL to be gone) 強(qiáng)制URL為GONE,返回410HTTP狀態(tài)碼。
4) P(force proxy) 強(qiáng)制使用代理轉(zhuǎn)發(fā)。
5) L(last rule) 表明當(dāng)前規(guī)則是最后一條規(guī)則,停止分析以后規(guī)則的重寫(xiě)。
6) N(next round) 重新從第一條規(guī)則開(kāi)始運(yùn)行重寫(xiě)過(guò)程。
7) C(chained with next rule) 與下一條規(guī)則關(guān)聯(lián)
如果規(guī)則匹配則正常處理,該標(biāo)志無(wú)效,如果不匹配,那么下面所有關(guān)聯(lián)的規(guī)則都跳過(guò)。
8) T=MIME-type(force MIME type) 強(qiáng)制MIME類型
9) NS (used only if no internal sub-request) 只用于不是內(nèi)部子請(qǐng)求
10) NC(no case) 不區(qū)分大小寫(xiě)
11) QSA(query string append) 追加請(qǐng)求字符串
12) NE(no URI escaping of output) 不在輸出轉(zhuǎn)義特殊字符
例如:RewriteRule /foo/(.*) /bar?arg=P1%3d$1 [R,NE] 將能正確的將/foo/zoo轉(zhuǎn)換成/bar?arg=P1=zoo
13) PT(pass through to next handler) 傳遞給下一個(gè)處理
例如:
復(fù)制代碼 代碼如下:
RewriteRule ^/abc(.*) /def$1 [PT] # 將會(huì)交給/def規(guī)則處理
Alias /def /ghi

14) S=num(skip next rule(s)) 跳過(guò)num條規(guī)則
15) E=VAR:VAL(set environment variable) 設(shè)置環(huán)境變量

四、Apache rewrite例子
例子一:
同時(shí)達(dá)到下面兩個(gè)要求:
1.用http://www.dbjr.com.cn/xxx.php 來(lái)訪問(wèn) http://www.dbjr.com.cn/xxx/
2.用http://yyy.jb51.net 來(lái)訪問(wèn) http://www.dbjr.com.cn/user.php?username=yyy 的功能

復(fù)制代碼 代碼如下:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.dbjr.com.cn
RewriteCond %{REQUEST_URI} !^user.php$
RewriteCond %{REQUEST_URI} .php$
RewriteRule (.*).php$ http://www.dbjr.com.cn/$1/ [R]
RewriteCond %{HTTP_HOST} !^www.dbjr.com.cn
RewriteRule ^(.+) %{HTTP_HOST} [C]
RewriteRule ^([^.]+).jb51.net http://www.dbjr.com.cn/user.php?username=$1

例子二:

復(fù)制代碼 代碼如下:

/type.php?typeid=* –> /type*.html
/type.php?typeid=*&page=* –> /type*page*.html

RewriteRule ^/type([0-9]+).html$ /type.php?typeid=$1 [PT]
RewriteRule ^/type([0-9]+)page([0-9]+).html$ /type.php?typeid=$1&page=$2 [PT]

相關(guān)文章

  • 在centos7上搭建mysql主從服務(wù)器的方法(圖文教程)

    在centos7上搭建mysql主從服務(wù)器的方法(圖文教程)

    這篇文章主要介紹了在centos7上搭建mysql主從服務(wù)器的方法,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 詳解Linux批量更改文件后綴名

    詳解Linux批量更改文件后綴名

    本篇文章主要介紹了詳解Linux批量更改文件后綴名,主要是使用了rename,有需要的朋友可以了解一下。
    2016-11-11
  • .htaccess文件寫(xiě)法之作用范圍

    .htaccess文件寫(xiě)法之作用范圍

    在htaccess寫(xiě)法詳解一文中已經(jīng)寫(xiě)過(guò)了htaccess文件一基本寫(xiě)法和語(yǔ)句原則,同時(shí)本文也不再闡述htaccess文件的作用之強(qiáng)大,今天只來(lái)討論一下很多人都容易誤解的一個(gè)地方,那就是.htaccess文件的作用范圍
    2012-02-02
  • Linux桌面的4種掃描工具

    Linux桌面的4種掃描工具

    今天小編就為大家分享一篇關(guān)于Linux桌面的4種掃描工具的文章,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • 用DNSPod和Squid打造自己的CDN (五) 安裝Squid的前期準(zhǔn)備

    用DNSPod和Squid打造自己的CDN (五) 安裝Squid的前期準(zhǔn)備

    從本章開(kāi)始,大家將會(huì)學(xué)到如何在Linux下面安裝、編譯程序,還會(huì)學(xué)到程序編譯的優(yōu)化方法,最后會(huì)通過(guò)源代碼編譯的方式把Squid安裝上
    2013-04-04
  • linux下jps命令找不到的問(wèn)題及解決

    linux下jps命令找不到的問(wèn)題及解決

    這篇文章主要介紹了linux下jps命令找不到的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • linux提示未找到命令unzip和zip的解決方案

    linux提示未找到命令unzip和zip的解決方案

    這篇文章主要介紹了linux提示未找到命令unzip和zip的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Linux修改網(wǎng)卡名稱、主機(jī)名的方法

    Linux修改網(wǎng)卡名稱、主機(jī)名的方法

    本篇文章主要介紹了Linux修改網(wǎng)卡名稱、主機(jī)名的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • CentOS6環(huán)境下搭建路由器的方法

    CentOS6環(huán)境下搭建路由器的方法

    這篇文章主要為大家詳細(xì)介紹了CentOS6如何實(shí)現(xiàn)路由器功能,CentOS6環(huán)境下搭建路由器的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • LNMP系列教程之 SSL安裝WordPress博客(程序下載與安裝)

    LNMP系列教程之 SSL安裝WordPress博客(程序下載與安裝)

    在之前的文章中,老左已經(jīng)在VPS中添加了站點(diǎn),然后我們就需要傳程序建站。我們可以利用WinSCP工具直接向我們的對(duì)應(yīng)的站點(diǎn)目錄中傳程序,然后添加數(shù)據(jù)庫(kù)安裝網(wǎng)站
    2012-09-09

最新評(píng)論