基於php實現301重新導向跳轉執行個體詳解

來源:互聯網
上載者:User
本文主要介紹php 實現301重新導向跳轉,通過執行個體代碼讓大家更好的理解重新導向的方法,有需要的小夥伴可以參考下

在php中301重新導向實現方法很簡單我們只要簡單的利用header發送301狀態碼,然後再用header進行跳轉,效果與apache,iis,nginx都是一樣的效果哦。

一:更推薦這種方法,因為它可以把http://www.jb51.net原來所有的url都轉到http://jb51.net新的地址上

代碼如下

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

二:單頁多站的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( 'Content-Type:text/html;charset=utf-8 ');//Atomheader('Content-type: application/atom+xml');//CSSheader('Content-type: text/css');//Javascriptheader('Content-type: text/javascript');//JPEG Imageheader('Content-type: image/jpeg');//JSONheader('Content-type: application/json');//PDFheader('Content-type: application/pdf');//RSSheader('Content-Type: application/rss+xml; charset=ISO-8859-1');//Text (Plain)header('Content-type: text/plain');//XMLheader('Content-type: text/xml');// okheader('HTTP/1.1 200 OK');//設定一個404頭:header('HTTP/1.1 404 Not Found');//設定地址被永久的重新導向header('HTTP/1.1 301 Moved Permanently');//轉到一個新地址header('Location: http://www.example.org/');//檔案延遲轉向:header('Refresh: 10; url=http://www.example.org/');print 'You will be redirected in 10 seconds';//當然,也可以使用html文法實現// <meta http-equiv="refresh" content="10;http://www.example.org/ />// override X-Powered-By: PHP:header('X-Powered-By: PHP/4.4.0');header('X-Powered-By: Brain/0.6b');//文檔語言header('Content-language: en');//告訴瀏覽器最後一次修改時間$time = time() - 60; // or filemtime($fn), etcheader('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT');//告訴瀏覽器文檔內容沒有發生改變header('HTTP/1.1 304 Not Modified');//設定內容長度header('Content-Length: 1234');//設定為一個下載類型header('Content-Type: application/octet-stream');header('Content-Disposition: attachment; filename="example.zip"');header('Content-Transfer-Encoding: binary');// load the file to send:readfile('example.zip');// 對當前文檔禁用緩衝header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate');header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the pastheader('Pragma: no-cache');//設定內容類型:header('Content-Type: text/html; charset=iso-8859-1');header('Content-Type: text/html; charset=utf-8');header('Content-Type: text/plain'); //純文字格式header('Content-Type: image/jpeg'); //JPG***header('Content-Type: application/zip'); // ZIP檔案header('Content-Type: application/pdf'); // PDF檔案header('Content-Type: audio/mpeg'); // 音頻檔案header('Content-Type: application/x-shockw**e-flash'); //Flash動畫//顯示登陸對話方塊header('HTTP/1.1 401 Unauthorized');header('WWW-Authenticate: Basic realm="Top Secret"');print 'Text that will be displayed if the user hits cancel or ';print 'enters wrong login data';

跳轉要注意以下幾點,有助於解決一些新手經常遇到的問題

1、location和“:”號間不能有空格,否則會出錯。

2、在用header前不能有任何的輸出。

3、header後的PHP代碼還會被執行。


總結:以上就是本篇文的全部內容,希望能對大家的學習有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.