목차
您可能感兴趣的文章
php教程 php手册 .htaccess 语法参数说明

.htaccess 语法参数说明

Jun 13, 2016 am 09:36 AM
매개변수 문법 설명하다

接触过 .htaccess 文件的朋友们是否对立面的一些语法不是很懂,经常会看到一条规则后面跟些大写的 L NC R QSA 什么的,知道他们什么意思吗?OK,下面这篇文章就是简单的对 .htaccess 文件的相关语法参数进行一下简单的说明。

chain|C(链接下一规则)

此标记使当前规则与下一个规则相链接。它产生这样的效果:如果一个规则被匹配,则继续处理其后继规则,也就是这个标记不起作用;如果该规则不被匹配,则其后继规则将被跳过。比如,在一个目录级规则中执行一个外部重定向时,你可能需要删除”.www”(此处不应该出现”.www”)。

cookie|CO=NAME:VAL:domain[:lifetime[:path]](设置cookie)

在客户端设置一个cookie。cookie的名称是NAME,值是VAL。domain是该cookie的域,比如.apache.org,可选的lifetime是cookie的有效期(分钟),可选的path是cookie的路径。

env|E=VAR:VAL(设置环境变量)

此标记将环境变量VAR的值为VAL,VAL可以包含可扩展的正则表达式反向引用($N和%N)。此标记可以多次使用以设置多个变量。这些变量可以在其后许多情况下被间接引用,通常是在XSSI()或CGI($ENV{VAR})中,也可以在后继的RewriteCond指令的CondPattern参数中通过%{ENV:VAR}引用。使用它可以记住从URL中剥离的信息。

forbidden|F(强制禁止URL)

强制禁止当前URL,也就是立即反馈一个HTTP响应码403(被禁止的)。使用这个标记,可以链接若干个RewriteConds来有条件地阻塞某些URL。

gone|G(强制废弃URL)

强制当前URL为已废弃,也就是立即反馈一个HTTP响应码410(已废弃的)。使用这个标记,可以标明页面已经被废弃而不存在了。

handler|H=Content-handler(强制指定内容处理器)

强自制定目标文件的内容处理器为Content-handler。例如,用来模拟mod_alias模块的ScriptAlias指令,以强制映射文件夹内的所有文件都由”cgi-script”处理器处理。

last|L(结尾规则)

立即停止重写操作,并不再应用其他重写规则。它对应于Perl中的last命令或C语言中的break命令。这个标记用于阻止当前已被重写的URL被后继规则再次重写。例如,使用它可以重写根路径的URL(/)为实际存在的URL(比如:/e/www/)。

next|N(从头再来)

重新执行重写操作(从第一个规则重新开始)。此时再次进行处理的URL已经不是原始的URL了,而是经最后一个重写规则处理过的URL。它对应于Perl中的next命令或C语言中的continue命令。此标记可以重新开始重写操作(立即回到循环的开头)。但是要小心,不要制造死循环!

nocase|NC(忽略大小写)

它使Pattern忽略大小写,也就是在Pattern与当前URL匹配时,A-Z和a-z没有区别。

noescape|NE(在输出中不对URI进行转义)

此标记阻止mod_rewrite对重写结果应用常规的URI转义规则。 一般情况下,特殊字符(%, $, ;等)会被转义为等值的十六进制编码(%25′, %24′, %3B等)。此标记可以阻止这样的转义,以允许百分号等符号出现在输出中,比如:

RewriteRule /foo/(.*) /bar?arg=P1\%3d$1 [R,NE] 可以使/foo/zed转向到一个安全的请求/bar?arg=P1=zed

nosubreq|NS(不对内部子请求进行处理)

在当前请求是一个内部子请求时,此标记强制重写引擎跳过该重写规则。比如,在mod_include试图搜索目录默认文件(index.xxx)时,Apache会在内部产生子请求。对于子请求,重写规则不一定有用,而且如果整个规则集都起作用,它甚至可能会引发错误。所以,可以用这个标记来排除某些规则。使用原则:如果你为URL添加了CGI脚本前缀,以强制它们由CGI脚本处理,但对子请求处理的出错率(或者资源开销)很高,在这种情况下,可以使用这个标记。

proxy|P(强制为代理)

此标记使替换成分被内部地强制作为代理请求发送,并立即中断重写处理,然后把处理移交给mod_proxy模块。你必须确保此替换串是一个能够被mod_proxy处理的有效URI(比如以http://www.phpernote.com开头),否则将得到一个代理模块返回的错误。使用这个标记,可以把某些远程成分映射到本地服务器域名空间,从而增强了ProxyPass指令的功能。注意:要使用这个功能,必须已经启用了mod_proxy模块。

passthrough|PT(移交给下一个处理器)

此标记强制重写引擎将内部request_rec结构中的uri字段设置为filename字段的值,这个小小的修改使得RewriteRule指令的输出能够被(从URI转换到文件名的)Alias, ScriptAlias, Redirect等指令进行后续处理[原文:This flag is just a hack to enable post-processing of the output of RewriteRule directives, using Alias, ScriptAlias, Redirect, and other directives from various URI-to-filename translators.]。

举一个能说明其含义的例子: 如果要将/abc重写为/def, 然后再使用mod_alias将/def转换为/ghi,可以这样:

RewriteRule ^/abc(.*) /def$1 [PT]
Alias /def /ghi

如果省略了PT标记,虽然将uri=/abc/…重写为filename=/def/…的部分运作正常,但是后续的mod_alias在试图将URI转换到文件名时会遭遇失效。注意:如果需要混合使用多个将URI转换到文件名的模块时,就必须使用这个标记。。此处混合使用mod_alias和mod_rewrite就是个典型的例子。

qsappend|QSA(追加查询字符串)

此标记强制重写引擎在已有的替换字符串中追加一个查询字符串,而不是简单的替换。如果需要通过重写规则在请求串中增加信息,就可以使用这个标记。

redirect|R [=code](强制重定向)

若Substitution以http://thishost[:thisport]/(使新的URL成为一个URI)开头,可以强制性执行一个外部重定向。如果没有指定code,则产生一个HTTP响应码302(临时性移动)。如果需要使用在300-400范围内的其他响应代码,只需在此指定即可(或使用下列符号名称之一:temp(默认), permanent, seeother)。使用它可以把规范化的URL反馈给客户端,如将”/~”重写为”/u/”,或始终对/u/user加上斜杠,等等。

注意:在使用这个标记时,必须确保该替换字段是一个有效的URL。否则,它会指向一个无效的位置!并且要记住,此标记本身只是对URL加上http://thishost[:thisport]/前缀,重写操作仍然会继续进行。通常,你还会希望停止重写操作而立即重定向,那么就还需要使用L标记。

skip|S=num(跳过后继规则)

此标记强制重写引擎跳过当前匹配规则之后的num个规则。它可以模拟if-then-else结构:最后一个规则是then从句,而被跳过的skip=N个规则是else从句。注意:它和chain|C标记是不同的!

type|T=MIME-type(强制MIME类型)

强制目标文件的MIME类型为MIME-type,可以用来基于某些特定条件强制设置内容类型。比如,下面的指令可以让.php文件在以.phps扩展名调用的情况下由mod_php按照PHP源代码的MIME类型(application/x-httpd-php-source)显示:

RewriteRule ^(.+\.php)s$ $1 [T=application/x-httpd-php-source]

您可能感兴趣的文章

  • phpMyAdmin Cannot start session without errors错误解决办法
  • .htaccess如何设置防盗链某个目录的图片
  • php中$this、static、final、const、self 等几个关键字的用法
  • 利用.htaccess禁止列表目录
  • Fatal error Class 'SoapClient' not found in ...错误处理办法
  • php提示Maximum execution time of 30 seconds exceeded...错误的解决办法
  • 10 段实用的 .htaccess 代码片段
  • 利用.htaccess拒绝某ip访问网站
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PHP 버전 5.4의 새로운 기능: 호출 가능 유형 힌트 매개변수를 사용하여 호출 가능 함수 또는 메서드를 허용하는 방법 PHP 버전 5.4의 새로운 기능: 호출 가능 유형 힌트 매개변수를 사용하여 호출 가능 함수 또는 메서드를 허용하는 방법 Jul 29, 2023 pm 09:19 PM

PHP5.4 버전의 새로운 기능: 호출 가능 유형 힌트 매개변수를 사용하여 호출 가능 함수 또는 메소드를 허용하는 방법 소개: PHP5.4 버전에는 매우 편리한 새 기능이 도입되었습니다. 호출 가능 유형 힌트 매개변수를 사용하여 호출 가능 함수 또는 메소드를 허용할 수 있습니다. 이 새로운 기능을 사용하면 함수와 메서드가 추가 확인 및 변환 없이 해당 호출 가능 매개변수를 직접 지정할 수 있습니다. 이 기사에서는 호출 가능 유형 힌트의 사용을 소개하고 몇 가지 코드 예제를 제공합니다.

제품 매개변수는 무엇을 의미합니까? 제품 매개변수는 무엇을 의미합니까? Jul 05, 2023 am 11:13 AM

제품 매개변수는 제품 속성의 의미를 나타냅니다. 예를 들어 의류 매개변수에는 브랜드, 소재, 모델, 크기, 스타일, 직물, 적용 그룹, 색상 등이 포함됩니다. 식품 매개변수에는 브랜드, 중량, 재료, 건강 허가 번호, 적용 그룹, 색상 등이 포함됩니다. 브랜드, 크기, 색상, 원산지, 적용 가능한 전압, 신호, 인터페이스 및 전원 등이 포함됩니다.

i9-12900H 매개변수 평가 목록 i9-12900H 매개변수 평가 목록 Feb 23, 2024 am 09:25 AM

i9-12900H는 14코어 프로세서로, 사용된 아키텍처와 기술이 모두 새롭고, 전반적인 작업이 매우 뛰어나며, 특히 포괄적이며 사용자에게 뛰어난 경험을 제공할 수 있습니다. . i9-12900H 매개변수 평가 검토: 1. i9-12900H는 14코어 프로세서로, q1 아키텍처와 24576kb 프로세스 기술을 채택하고 20스레드로 업그레이드되었습니다. 2. 최대 CPU 주파수는 1.80!5.00ghz이며 주로 작업량에 따라 다릅니다. 3. 가격에 비해 가격 대비 성능이 매우 적합하며 정상적인 사용이 필요한 일부 파트너에게 매우 적합합니다. i9-12900H 매개변수 평가 및 성능 벤치마크

C++ 함수 매개변수 유형 안전성 확인 C++ 함수 매개변수 유형 안전성 확인 Apr 19, 2024 pm 12:00 PM

C++ 매개변수 유형 안전성 검사는 함수가 컴파일 시간 검사, 런타임 검사 및 정적 어설션을 통해 예상된 유형의 값만 허용하도록 보장하여 예기치 않은 동작 및 프로그램 충돌을 방지합니다. 컴파일 시간 유형 검사: 컴파일러가 유형 호환성을 검사합니다. 런타임 유형 검사: 동적_캐스트를 사용하여 유형 호환성을 확인하고 일치하는 항목이 없으면 예외를 발생시킵니다. 정적 어설션: 컴파일 타임에 유형 조건을 어설션합니다.

주어진 값을 인수로 취하는 역쌍곡사인 함수의 값을 찾는 C++ 프로그램 주어진 값을 인수로 취하는 역쌍곡사인 함수의 값을 찾는 C++ 프로그램 Sep 17, 2023 am 10:49 AM

쌍곡선 함수는 원 대신 쌍곡선을 사용하여 정의되며 일반 삼각 함수와 동일합니다. 제공된 각도(라디안)에서 쌍곡사인 함수의 비율 매개변수를 반환합니다. 그러나 반대로 하십시오. 즉, 반대로 하십시오. 쌍곡선 사인으로부터 각도를 계산하려면 쌍곡선 역사인 연산과 같은 역쌍곡선 삼각법 연산이 필요합니다. 이 과정에서는 라디안 단위의 쌍곡선 사인 값을 사용하여 각도를 계산하기 위해 C++에서 쌍곡선 역사인(asinh) 함수를 사용하는 방법을 보여줍니다. 쌍곡선 아크사인 연산은 다음 공식 -$$\mathrm{sinh^{-1}x\:=\:In(x\:+\:\sqrt{x^2\:+\:1})}을 따릅니다. 여기서\:In\:은\:자연 로그\:(log_e\:k)

C++ 함수에서 참조 매개변수 및 포인터 매개변수의 고급 사용 C++ 함수에서 참조 매개변수 및 포인터 매개변수의 고급 사용 Apr 21, 2024 am 09:39 AM

C++ 함수의 참조 매개변수(기본적으로 변수 별칭, 참조를 수정하면 원래 변수가 수정됨)와 포인터 매개변수(원래 변수의 메모리 주소 저장, 포인터 역참조를 통해 변수 수정)는 변수를 전달하고 수정할 때 사용법이 다릅니다. 참조 매개변수는 생성자나 할당 연산자에 전달될 때 복사 오버헤드를 피하기 위해 원래 변수(특히 대규모 구조)를 수정하는 데 자주 사용됩니다. 포인터 매개변수는 메모리 위치를 유연하게 가리키거나, 동적 데이터 구조를 구현하거나, 선택적 매개변수를 나타내기 위해 널 포인터를 전달하는 데 사용됩니다.

람다 표현식의 구문과 구조적 특징은 무엇입니까? 람다 표현식의 구문과 구조적 특징은 무엇입니까? Apr 25, 2024 pm 01:12 PM

람다 표현식은 이름이 없는 익명 함수이며 구문은 (parameter_list)->expression입니다. 익명성, 다양성, 커링 및 폐쇄 기능이 특징입니다. 실제 응용 프로그램에서는 람다 표현식을 사용하여 합산 함수 sum_lambda=lambdax,y:x+y와 같은 함수를 간결하게 정의하고 map() 함수를 목록에 적용하여 합산 작업을 수행할 수 있습니다.

vlookup 함수의 매개변수와 그 의미에 대한 설명 vlookup 함수의 매개변수와 그 의미에 대한 설명 Jan 09, 2024 pm 03:18 PM

우리는 엑셀을 사용할 때 vlookup 함수를 사용했을 것입니다. 따라서 이러한 함수가 여러 개 있으며 각 함수를 구체적으로 사용하는 방법은 편집자가 아는 한 Lookup_value, Table_array, col_index_num 및 Range_lookup이라는 네 가지 vlookup 함수가 있습니다. 그럼 구체적인 사용법을 알려드릴게요~ vlookup 함수에는 여러 개의 매개변수가 있고 각 매개변수의 의미는 vlookup 함수의 매개변수에는 Lookup_value, Table_array, col_index_num, Range_lookup 총 4개가 있습니다. 1.조회

See all articles