亚洲精品视频一区二区,一级毛片在线观看视频,久久国产a,狠狠狠色丁香婷婷综合久久五月,天天做天天欢摸夜夜摸狠狠摸

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

 找回密碼
 注冊

QQ登錄

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

搜索
查看: 11171|回復: 1
打印 上一主題 下一主題

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

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


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


防止目錄瀏覽:

Options All -Indexes

404重定向

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

設置重寫(xiě)的根目錄:RewriteBase /     — 說(shuō)明 :因為定義了這個(gè)文件夾,所以對應的替換就有了一個(gè)參照。

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

舉個(gè)例子,為了能讓搜索引擎更多地抓取我們的網(wǎng)頁(yè)而避免重復抓,我們通常把沒(méi)有www的域名重定向到www.XXX.com,如下就實(shí)現了這個(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} 是指取得用戶(hù)訪(fǎng)問(wèn)的URL的主域名  然后空格后面是一個(gè)正則表達式匹配,意識就是說(shuō)是否是 xxx.com 。

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

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

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

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

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

R:redirect,重定向

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

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


RewriteEngine On

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

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


.htaccess語(yǔ)法規則

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]     //如果訪(fǎng)問(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     //并且訪(fǎng)問(wèn)的文件找不到
RewriteRule ^images/(.+) http://127.0.0.1/test/showimages/$1 [R=302,L]     //則跳轉到另一個(gè)域名下的另一個(gè)目錄訪(fǎng)問(wèn)這個(gè)圖片

二級域名重定向到www.yourdomain.com

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



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

DirectoryIndex about.html

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

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

本版積分規則

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

GMT+8, 2025-3-7 05:26 , Processed in 0.037818 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回復 返回頂部 返回列表
亚洲精品视频一区二区,一级毛片在线观看视频,久久国产a,狠狠狠色丁香婷婷综合久久五月,天天做天天欢摸夜夜摸狠狠摸