亚洲欧美成人综合一区_国产精品一区二区无码_亚洲风情偷拍区_成?人免费无码视频在线看

西安做網(wǎng)站_西安網(wǎng)站建設(shè)公司_西安網(wǎng)頁(yè)制作_西安網(wǎng)頁(yè)設(shè)計(jì)_西安網(wǎng)站制作設(shè)計(jì)公司

 找回密碼
 注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 10178|回復(fù): 1
打印 上一主題 下一主題

.htaccess語(yǔ)法規(guī)則學(xué)習(xí) [NC][R][F][L]

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2019-2-26 21:21:25 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
RewriteCond TestString CondPattern [flags]
/*
RewriteCond:
  指令定義了一個(gè)規(guī)則的條件,即,在一個(gè)RewriteRule指令之前有一個(gè)或多個(gè)RewriteCond指令。
條件之后的重寫(xiě)規(guī)則僅在當(dāng)前URI與pattern匹配并且符合這些條件的時(shí)候才會(huì)起作用。


RewriteRule Pattern Substitution [Flags]
/*
其中的Pattern就是參數(shù),一般為一些文件的擴(kuò)展名;
Substitution是用來(lái)替換前面用的;
這兒的Flags,參考上面的表格,常用的R表示 redirect(強(qiáng)制重定向),F(xiàn)表示forbidden(禁止訪問(wèn)),L表示last(最后),通常當(dāng)你希望停止重寫(xiě)操作而立即重定向時(shí),可用它。
*/


防止目錄瀏覽:

Options All -Indexes

404重定向

ErrorDocument 404 /404.html
--------------------------------------------------------------------------------------------------------------------------
開(kāi)啟重寫(xiě)引擎 :RewriteEngine on

設(shè)置重寫(xiě)的根目錄:RewriteBase /     — 說(shuō)明 :因?yàn)槎x了這個(gè)文件夾,所以對(duì)應(yīng)的替換就有了一個(gè)參照。

匹配所有符合條件的請(qǐng)求:RewriteCond       — 說(shuō)明:RewriteCond 定義了一系列規(guī)則條件,這個(gè)指令可以有一條或者多條,只有用戶拿來(lái)的url符合這些條件之后,我們的.htaccess才開(kāi)始接待,否則用戶就直接自己去訪問(wèn)所需要的目錄了。

舉個(gè)例子,為了能讓搜索引擎更多地抓取我們的網(wǎng)頁(yè)而避免重復(fù)抓,我們通常把沒(méi)有www的域名重定向到www.XXX.com,如下就實(shí)現(xiàn)了這個(gè)功能:

RewriteEngine On

RewriteCond %{HTTP_HOST}  ^xxx\.com$ [NC]

RewriteRule ^(.*)$  http://www.xxx.com/$1 [R=301,L]

上例便把xxx.com 重定向到www.xxx.com

%{HTTP_HOST} 是指取得用戶訪問(wèn)的URL的主域名  然后空格后面是一個(gè)正則表達(dá)式匹配,意識(shí)就是說(shuō)是否是 xxx.com 。

如果用戶訪問(wèn)使用的URL滿足所有列出的RewriteCond 提出的條件,那么進(jìn)行下一步RewriteRule 即開(kāi)始進(jìn)行引導(dǎo),這才開(kāi)始實(shí)現(xiàn).htaccess文件的重要功能。

同樣,前面是正則表達(dá)式,用戶分析用戶的除了主域名nbphp.com之外的URL ,^(.*)$的意思就是所有的內(nèi)容。 然后空格后面寫(xiě)的是我們引導(dǎo)用戶訪問(wèn)的目錄,我們帶著他走到新的一個(gè)域名上。$1 指的是前面括號(hào)里匹配url所得到的內(nèi)容。

--------------------------------------------------------------------------------------------------------------------------

.htaccess中的[NC][R][F][L]幾個(gè)標(biāo)記是什么意思

NC: no case,就是說(shuō)不區(qū)分大小寫(xiě)

R:redirect,重定向

F:forbidden,禁止訪問(wèn)

L:last,表示已經(jīng)是最后一條規(guī)則,.htaccess文件解析即將退出


RewriteEngine On

RewriteRule ^beauty/ydjs/office/(\d{6})(\d{2})/(.*)$ /a/$1/$3 [NC,R=301]

NC,R 這幾個(gè)參數(shù)現(xiàn)在就很容易理解了,NC:忽略大小寫(xiě);R:跳轉(zhuǎn)形式為301


.htaccess語(yǔ)法規(guī)則

RewriteEngine On
RewiteBase /
RewriteCond %{HTTP_REFERER} !^http://(.+.)?baidu.com/ [NC]        //如果來(lái)源網(wǎng)址不是*.baidu.com
RewriteCond %{HTTP_REFERER} !^$                                   //并且來(lái)源網(wǎng)址不是空
RewriteRule .*.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L]     //如果訪問(wèn)的文件后綴是jpeg,jpg,gif,bmp,png的圖片,則重定向到一個(gè)固定的圖片

RewriteEngine On|Off           //RewriteEngine 用于開(kāi)啟或停用rewrite功能。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^localhost$    //如果域名是localhost
RewriteCond %{REQUEST_FILENAME} !-f     //并且訪問(wèn)的文件找不到
RewriteRule ^images/(.+) http://127.0.0.1/test/showimages/$1 [R=302,L]     //則跳轉(zhuǎn)到另一個(gè)域名下的另一個(gè)目錄訪問(wèn)這個(gè)圖片

二級(jí)域名重定向到www.yourdomain.com

rewriteEngine on
rewriteCond %{http_host} ^yourdomain.com [NC]
rewriteRule ^(.*)$ http://www.yourdomain.com/$1 [R=301,L]



設(shè)置目錄默認(rèn)頁(yè)面

DirectoryIndex about.html

RewriteRule標(biāo)記        含 義        描 述
R        Redirect        發(fā)出一個(gè)HTTP重定向
F        Forbidden        禁止對(duì)URL地址的存取
G        Gone        標(biāo)記URL地址不存在
P        Proxy        將URL地址傳遞給mod_proxy
L        Last        停止處理接下來(lái)的規(guī)則
N        Next        再次重第一個(gè)規(guī)則開(kāi)始處理,但是使用當(dāng)前重寫(xiě)后的URL地址
C        Chain        將當(dāng)前的規(guī)則和緊隨其后的規(guī)則鏈接起來(lái)
T        Type        強(qiáng)制執(zhí)行指明的MIME類
NS        Nosubreq        只在沒(méi)有任何內(nèi)部子請(qǐng)求執(zhí)行時(shí)運(yùn)行本腳本
NC        Nocase        URL地址匹配對(duì)大小寫(xiě)不敏感
QSA        Qsappend        在新的URL地址后附加查詢字符串部分,而不是替代
PT        Passthrough        將重寫(xiě)后的URL地址傳遞給另一個(gè)Apache模塊進(jìn)行進(jìn)一步處理
S        Skip        忽略之后的規(guī)則
E        Env        設(shè)置環(huán)境變量

服務(wù)器變量NAME_OF_VARIABLE具體數(shù)值見(jiàn)下表:
復(fù)制代碼
HTTP_USER_AGENT                  //主要用于檢測(cè)訪問(wèn)者系統(tǒng)和瀏覽器等
HTTP_REFERER                     //從哪個(gè)頁(yè)面鏈接過(guò)來(lái)
HTTP_COOKIE
HTTP_FORWARDED
HTTP_HOST                        //域名
HTTP_PROXY_CONNECTION
HTTP_ACCEPT                     
REMOTE_ADDR
REMOTE_HOST
REMOTE_USER
REMOTE_IDENT
REQUEST_METHOD
SCRIPT_FILENAME
PATH_INFO
QUERY_STRING
AUTH_TYPE
DOCUMENT_ROOT
SERVER_ADMIN
SERVER_NAME
SERVER_ADDR
SERVER_PORT
SERVER_PROTOCOL
SERVER_SOFTWARE
TIME_YEAR
TIME_MON
TIME_DAY
TIME_HOUR
TIME_MIN
TIME_SEC
TIME_WDAY
TIME
API_VERSION                      //這是正在使用的httpd中(服務(wù)器和模塊之間內(nèi)部接口)的Apache模塊API的版本, 其定義位于include/ap_mmn.h中。此模塊版本對(duì)應(yīng)于正在使用的Apache的版本 (比如,在Apache 1.3.14的發(fā)行版中,這個(gè)值是19990320:10)。 通常,對(duì)它感興趣的是模塊的作者。
THE_REQUEST                      //這是由瀏覽器發(fā)送給服務(wù)器的完整的HTTP請(qǐng)求行。(比如, “GET /index.html HTTP/1.1″). 它不包含任何瀏覽器發(fā)送的附加頭信息。
REQUEST_URI                      //這是在HTTP請(qǐng)求行中所請(qǐng)求的資源。
REQUEST_FILENAME                 //這是與請(qǐng)求相匹配的完整的本地文件系統(tǒng)的文件路徑名或描述.
IS_SUBREQ                        //如果正在處理的請(qǐng)求是一個(gè)子請(qǐng)求,它包含字符串”true”,否則就是”false”。 模塊為了解析URI中的附加文件,有可能會(huì)產(chǎn)生子請(qǐng)求
西安網(wǎng)站建設(shè) | 西安做網(wǎng)站 —— 劍鋒所指 所向披靡!
沙發(fā)
 樓主| 發(fā)表于 2019-2-26 21:21:37 | 只看該作者
RewriteCond TestString CondPattern [flags]
/*
1、RewriteCond:
  指令定義了一個(gè)規(guī)則的條件,即,在一個(gè)RewriteRule指令之前有一個(gè)或多個(gè)RewriteCond指令。
條件之后的重寫(xiě)規(guī)則僅在當(dāng)前URI與pattern匹配并且符合這些條件的時(shí)候才會(huì)起作用。
2、TestString:
  是一個(gè)純文本的字符串,但是還可以包含下列可擴(kuò)展的成分:
3、RewriteRule反向引用:
  引用方法是 $N  (0 <= N <= 9) 引用當(dāng)前(帶有若干RewriteCond指令的)RewriteRule中的 與pattern匹配的分組成分(圓括號(hào)!)。
4、RewriteCond反向引用:
  引用方法是 %N  (1 <= N <= 9) 引用當(dāng)前若干RewriteCond條件中最后符合的條件中的分組成分(圓括號(hào)!)。
5、RewriteMap 擴(kuò)展:
 引用方法是 ${mapname:key|default}
6、服務(wù)器變量:
  引用方法是 %{ NAME_OF_VARIABLE }  這個(gè)是我們最常使用到的功能
7、CondPattern:
  是條件pattern, 即, 一個(gè)應(yīng)用于當(dāng)前實(shí)例TestString的正則表達(dá)式, 即, TestString將會(huì)被計(jì)算然后與CondPattern匹配.
可以在pattern串中使用!字符(驚嘆號(hào))來(lái)實(shí)現(xiàn)匹配的反轉(zhuǎn)。
8、flags 參見(jiàn)下表
*/
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則

QQ|小黑屋|手機(jī)版|Archiver|西安網(wǎng)站建設(shè)

GMT+8, 2024-10-22 16:19 , Processed in 0.039839 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回復(fù) 返回頂部 返回列表