ホームページ  >  記事  >  バックエンド開発  >  PHPをベースにした301リダイレクトジャンプ例の詳細説明

PHPをベースにした301リダイレクトジャンプ例の詳細説明

墨辰丷
墨辰丷オリジナル
2018-06-01 17:33:391609ブラウズ

この記事では主に PHP での 301 リダイレクトの実装方法を紹介します。サンプルコードを通じて、必要な方は参考にしてください。PHP での 301 リダイレクトの実装方法は非常に簡単です。単純にヘッダーを使用して 301 ステータス コードを送信し、ヘッダーを使用してジャンプします。効果は Apache、iis、nginx と同じです。


1: この方法は、http://www.jb51.net の元の URL をすべて http://jb51.net の新しいアドレスに転送できるため、より推奨されます

コードは次のとおりです

<?php
$the_host = $_SERVER[&#39;HTTP_HOST&#39;];
$request_uri = isset($_SERVER[&#39;REQUEST_URI&#39;]) ? $_SERVER[&#39;REQUEST_URI&#39;] : &#39;&#39;;
if($the_host == &#39;www.jb51.net&#39;)
{
header(&#39;HTTP/1.1 301 Moved Permanently&#39;);
header(&#39;Location: http://jb51.net&#39;.$request_uri);//
}
?>

2: 単一ページのマルチサイト Php301 リダイレクト コード

、www.jb51.net、および jb51.net から 301 でindex.php に、jbzj.com から 301 で www.jbzj にリダイレクトします。 com、それ以外の場合はエラーページに移動します
コードは次のとおりです

if(($HTTP_HOST=="www.jb51.net")or($HTTP_HOST=="jb51.net"))
{
header("HTTP/1.1 301 Moved Permanently");
Header("Location: /index.php");
}
elseif($HTTP_HOST=="jbzj.com")
{
header("HTTP/1.1 301 Moved Permanently");
Header("Location: www.jbzj.com");
}
else
{
Header("Location: /404.htm");
}
?>

他のジャンプ方法も添付します

コードは次のとおりです

//定义编码
header( &#39;Content-Type:text/html;charset=utf-8 &#39;);
//Atom
header(&#39;Content-type: application/atom+xml&#39;);
//CSS
header(&#39;Content-type: text/css&#39;);
//Javascript
header(&#39;Content-type: text/javascript&#39;);
//JPEG Image
header(&#39;Content-type: image/jpeg&#39;);
//JSON
header(&#39;Content-type: application/json&#39;);
//PDF
header(&#39;Content-type: application/pdf&#39;);
//RSS
header(&#39;Content-Type: application/rss+xml; charset=ISO-8859-1&#39;);
//Text (Plain)
header(&#39;Content-type: text/plain&#39;);
//XML
header(&#39;Content-type: text/xml&#39;);
// ok
header(&#39;HTTP/1.1 200 OK&#39;);
//设置一个404头:
header(&#39;HTTP/1.1 404 Not Found&#39;);
//设置地址被永久的重定向
header(&#39;HTTP/1.1 301 Moved Permanently&#39;);
//转到一个新地址
header(&#39;Location: http://www.example.org/&#39;);
//文件延迟转向:
header(&#39;Refresh: 10; url=http://www.example.org/&#39;);
print &#39;You will be redirected in 10 seconds&#39;;
//当然,也可以使用html语法实现
// <meta http-equiv="refresh" content="10;http://www.example.org/ />
// override X-Powered-By: PHP:
header(&#39;X-Powered-By: PHP/4.4.0&#39;);
header(&#39;X-Powered-By: Brain/0.6b&#39;);
//文档语言
header(&#39;Content-language: en&#39;);
//告诉浏览器最后一次修改时间
$time = time() - 60; // or filemtime($fn), etc
header(&#39;Last-Modified: &#39;.gmdate(&#39;D, d M Y H:i:s&#39;, $time).&#39; GMT&#39;);
//告诉浏览器文档内容没有发生改变
header(&#39;HTTP/1.1 304 Not Modified&#39;);
//设置内容长度
header(&#39;Content-Length: 1234&#39;);
//设置为一个下载类型
header(&#39;Content-Type: application/octet-stream&#39;);
header(&#39;Content-Disposition: attachment; filename="example.zip"&#39;);
header(&#39;Content-Transfer-Encoding: binary&#39;);
// load the file to send:
readfile(&#39;example.zip&#39;);
// 对当前文档禁用缓存
header(&#39;Cache-Control: no-cache, no-store, max-age=0, must-revalidate&#39;);
header(&#39;Expires: Mon, 26 Jul 1997 05:00:00 GMT&#39;); // Date in the past
header(&#39;Pragma: no-cache&#39;);
//设置内容类型:
header(&#39;Content-Type: text/html; charset=iso-8859-1&#39;);
header(&#39;Content-Type: text/html; charset=utf-8&#39;);
header(&#39;Content-Type: text/plain&#39;); //纯文本格式
header(&#39;Content-Type: image/jpeg&#39;); //JPG***
header(&#39;Content-Type: application/zip&#39;); // ZIP文件
header(&#39;Content-Type: application/pdf&#39;); // PDF文件
header(&#39;Content-Type: audio/mpeg&#39;); // 音频文件
header(&#39;Content-Type: application/x-shockw**e-flash&#39;); //Flash动画
//显示登陆对话框
header(&#39;HTTP/1.1 401 Unauthorized&#39;);
header(&#39;WWW-Authenticate: Basic realm="Top Secret"&#39;);
print &#39;Text that will be displayed if the user hits cancel or &#39;;
print &#39;enters wrong login data&#39;;

お支払いくださいジャンプするときは次の点に注意してください。初心者がよく遭遇するいくつかの問題を解決するのに役立ちます


1 場所と「:」記号の間にスペースを入れることはできません。スペースを入れないとエラーが発生します。


2. ヘッダーを使用する前は出力できません。


3. ヘッダー以降の PHP コードも実行されます。


概要:上記がこの記事の全内容です、皆さんの学習に役立つことを願っています。

関連する推奨事項:

php Oracle ストアド プロシージャのグラフィック説明を参照

PHP は、バイナリ ストリームを受信して​​画像に変換するメソッドを実装します

php
カレント ストリームを取得するメソッドの実装URLアドレス


以上がPHPをベースにした301リダイレクトジャンプ例の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。