Php 301重定向头语法
在许多情况下,301重定向头在PHP中的定义如下:Php 301重定向头语法,php,redirect,syntax,http-headers,Php,Redirect,Syntax,Http Headers,在许多情况下,301重定向头在PHP中的定义如下: header('HTTP/1.0 301 Moved Permanently'); // or HTTP/1.1 header('Location: /new/path/'); 但是,我注意到以下HTTP状态代码定义也适用: header('HTTP/1.0 301') 标题('HTTP/1.0 301 Moved') header('HTTP/1.0 301因其他原因被移动') 我没有发现任何明确的规范说,永久移动零件是必须的 所以可以
header('HTTP/1.0 301 Moved Permanently'); // or HTTP/1.1
header('Location: /new/path/');
但是,我注意到以下HTTP状态代码定义也适用:
header('HTTP/1.0 301')代码>
标题('HTTP/1.0 301 Moved')代码>
header('HTTP/1.0 301因其他原因被移动')代码>
永久移动
零件是必须的
所以可以使用短版本的头('HTTP/1.0 301')代码>?根据(超文本传输协议——HTTP/1.0),原因短语
是状态行
的一部分,但原因短语
可能为空
将原因短语
的ABNF描述如下:
Reason-Phrase = *<TEXT, excluding CR, LF>
此外,您可以在不影响协议的情况下使用任何原因短语
为定义的数字状态代码的各个值 HTTP/1.0以及相应原因短语的示例集是
如下所示此处列出的原因短语仅供推荐
--它们可以在不影响协议的情况下由本地等效物替换。
我从未见过这种语法,我总是使用
标题('Location:/my/new/path',true,301)
。我从未设置HTTP状态代码的名称。
The character "*" preceding an element indicates repetition. The
full form is "<n>*<m>element" indicating at least <n> and at
most <m> occurrences of element. Default values are 0 and
infinity so that "*(element)" allows any number, including zero;
"1*element" requires at least one; and "1*2element" allows one
or two.