国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Apache > 正文

apache 301重定向的詳細做法

2024-08-27 18:22:05
字體:
來源:轉載
供稿:網友

301重定向可促進搜索引擎優化效果

從搜索引擎優化角度出發,301重定向是網址重定向最為可行的一種辦法。當網站的域名發生變更后,搜索引擎只對新網址進行索引,同時又會把舊地址下原有的外部鏈接如數轉移到新地址下,從而不會讓網站的排名因為網址變更而收到絲毫影響。同樣,在使用301永久性重定向命令讓多個域名指向網站主域時,亦不會對網站的排名產生任何負面影響。

關于301重定向的更多內容,大家不妨Google一下。本文只介紹實現方法啦!

301重定向的實現,我以前也寫過一篇相關的文章,但這篇文章的解決方法比較簡單,只能實現主頁的跳轉,本文介紹的這兩種方法,可以完美實現301重定向。

方法1:修改.htaccess文件
 
  1. <ifmodule mod_rewrite.c> 
  2. RewriteEngine On 
  3. RewriteCond %{HTTP_HOST} blog.Vevb.com$ [NC] 
  4. RewriteRule ^(.*)$ http://www.survivalescaperooms.com/$1 [R=301,L] 
  5. RewriteCond %{HTTP_HOST} iflyhigher.tk$ [NC] 
  6. RewriteRule ^(.*)$ http://http://www.survivalescaperooms.com/$1 [R=301,L] 
  7. RewriteCond %{HTTP_HOST} moiya.tk$ [NC] 
  8. RewriteRule ^(.*)$ http://http://www.survivalescaperooms.com/$1 [R=301,L] 
  9. </ifmodule> 

本博需要對三個域名進行重定向,所以寫的比較多,關鍵代碼就是2句話

RewriteCond %{HTTP_HOST} blog.Vevb.com.com$ [NC]

RewriteRule ^(.*)$ http://www.survivalescaperooms.com/$1 [R=301,L]

紅色的域名是需要被重定向的舊域名,綠色的是現在網站的域名。

方法2:使用PHP的重定向代碼

新建一個index.php教程文件,然后參考下面代碼按自己的重定向要求做簡單修改:

  1. <?php 
  2. $the_host = $_SERVER['HTTP_HOST']; 
  3. $request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : ''
  4. switch ($the_host
  5.     case "www.iflyhigher.tk"
  6.     case "iflyhigher.tk"
  7.         $location = "Location: http://http://www.111cn.net" . $request_uri
  8.         break
  9.     case "blog.iflyhigher.tk"
  10.         $location = "Location: http://www.zhutiai.com" . $request_uri
  11.         break
  12.     case "www.moiya.tk"
  13.     case "moiya.tk"
  14.         $location = "Location: http://http://www.111cn.net"
  15.         break
  16.     default
  17.         $location = "Location: http://http://www.111cn.net"
  18.         break
  19. header('HTTP/1.1 301 Moved Permanently'); 
  20. header($location); 
  21. exit(); 
  22. ?> 

如果只要對一個域名進行重定向,可以把代碼簡化成下面的形式:

  1. <?php 
  2. $the_host = $_SERVER['HTTP_HOST'];//取得進入所輸入的域名 
  3. $request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';//判斷后面的請求部分 
  4. if($the_host !== 'http://www.survivalescaperooms.com')//http://www.survivalescaperooms.com是我現在的域名 
  5.     header('HTTP/1.1 301 Moved Permanently');//發出301頭部 
  6.     header('Location: http://http://www.survivalescaperooms.com'.$request_uri);//跳轉到我的新域名地址 
  7.     exit(); 
  8. ?> 

注意,最后的exit()函數是一定要寫的,我最初就沒有寫,結果只能重定向首頁,像http://blog.iflyhigher.tk/guestbook這樣的網頁,就無法進行重定向。

最后,關于重定向的一些細節

由于要對三個域名進行重定向,重定向前,我首先將這三個域名作為Addon Domain綁定到我的服務器上去,并讓這三個域名指向同一個文件夾,這樣,只要修改這一個文件夾中的.htaccess文件或者index.php文件就可以了。如果沒有.htaccess文件或者index.php文件,新建一個即可。

希望本文對需要進行301重定向的朋友有幫助。

1. Apache模塊 mod_alias的 Redirect 和 RedirectMatch命令

上面提到2個命令使用方法相似。而區別就是后者RedirectMatch基于正則表達式匹配對當前的URL發送一個外部重定向語法為:

Redirect [status] URL-path URL

RedirectMatch [status] regex URL

status參數可以使用以下HTTP狀態碼:

permanent

返回一個永久性重定向狀態碼(301),表示此資源的位置變動是永久性的。

temp

返回一個臨時性重定向狀態碼(302),這是默認值。

seeother

返回一個“參見”狀態碼(303),表示此資源已經被替代。

gone

返回一個“已廢棄”狀態碼(410),表示此資源已經被永久性地刪除了。如果指定了這個狀態碼,則URL參數將被忽略。

舉例:APACHE
 
  1. Redirect 301 /old/old.htm http://www.survivalescaperooms.com/new.htm 
  2. Redirect permanent /one http://Vevb.com/two 
  3. RedirectMatch 301 (.*).gif$ http://www.survivalescaperooms.com/images/$1.jpg 

2.使用mod_rewrite重寫URL方式 APACHE

  1. Options +FollowSymLinks 
  2. RewriteEngine on 
  3. RewriteCond %{HTTP_HOST} ^baidu.com 
  4. RewriteRule ^(.*)$ http://www.survivalescaperooms.com/$1 [R=permanent,L] 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 建阳市| 景宁| 石景山区| 微山县| 铅山县| 如东县| 溧水县| 棋牌| 和田县| 江陵县| 介休市| 闽清县| 陕西省| 龙山县| 钟山县| 绥宁县| 玉环县| 崇礼县| 囊谦县| 新闻| 云安县| 万安县| 建阳市| 红河县| 阳泉市| 余姚市| 黔江区| 和田市| 阜城县| 呼伦贝尔市| 建宁县| 青浦区| 勐海县| 宣武区| 漳浦县| 靖远县| 昭觉县| 维西| 福建省| 固原市| 翁牛特旗|