asdtiang的博客 感謝blogjava提供的博客交流平臺

          struts2中實現html 301 302轉向

          Posted on 2011-02-23 10:11 asdtiang 閱讀(2103) 評論(0)  編輯  收藏 所屬分類: seo
          首先網上copy下什么是301,及302
          301轉向(或叫301重定向,301跳轉)是當用戶或搜索引擎向網站服務器發出瀏覽請求時,服務器返回的HTTP數據流中頭信息(header)中的狀態碼的一種,表示本網頁永久性轉移到另一個地址。

          其它常見的狀態碼還包括,200表示一切正常,404網頁找不到,302暫時轉向,等等。

          為什么要做網址轉向?

          你擁有不同TLD的多個域名:

          company.com  
          company.net
          company.org
          company.com.cn
          company.cn
          等等。
          這些域名全部指向一個網站。如用company.com為主域名,其它域名就可以轉向到company.com。

          或者你注冊了公司全稱域名longcompanyname.com,但太長  ,你也注冊了縮寫域名方便用戶記住lcn.com,其中一個做主域名,另一個就可以轉向到主域名。

          為什么要用301轉向?

          網址轉向方法主要包括:301轉向,302轉向,JavaScript轉向,PHP/ASP/CGI轉向,META  REFRESH網頁META刷新,等。302轉向可能會有URL規范化問題。其它方法都是常用的作弊手法,當然不是說不可以正當地用,方法本身沒有錯,但被作弊者用多了,搜索引擎對這些可疑的轉向都很敏感。何必冒險呢。

          當網頁A用301重定向轉到網頁B時,搜索引擎可以肯定網頁A永久的改變位置,或者說實際上不存在了,搜索引擎就會把網頁B當作唯一有效目標。好處是,第一,沒有網址規范化問題,第二,也很重要的,網頁A的PR網頁級別會傳到網頁B。

          很多時候其它網站會鏈接到

          http://domainname.com
          http://www.domainname.com/index.html
          http://domainname.com/index.html

          而不是你希望的

          http://www.domainname.com

          這樣鏈接的PR也會傳遞到所有URL,如果你用301轉向把前三個URL轉到
          http://www.domainname.com
          PR也就集中在網頁http://www.domainname.com了。

          怎樣判斷網站有網址規范化問題?

          英語中有句話,東西沒壞就別修理。很多網站沒做301轉向排名也沒影響,那就別動它。

          如果你覺得網站排名沒有預想的好,可以看看是否有網址規范化問題:

          1)  查一下這些URL是否都有差不多的PR值和網頁快照:

          http://domainname.com
          http://www.domainname.com/index.html
          http://domainname.com/index.html
          http://www.domainname.com

          如果是,那可能有問題。

          2)搜一下site:domain.com看是否結果中有多個主頁版本。

          3)你的網站是否在Google有大量網頁被標為“  補充材料”(Supplemental  Result)。一般認為被歸為“  補充材料”是網址規范化問題的征兆。

          怎樣做301轉向

          如果你用的是Unix/Linux主機,可以用文件(Unix/Linux中用于目錄特定指令如密碼,轉向,錯誤處理等的文件)。

          比如把/old.htm轉到http://www.domain.com/new.htm,可以用這個指令:

          redirect  301  /old.htm  http://www.domain.com/new.htm



          redirect  permanent  /old.htm  http://www.domain.com/new.htm

          如果要把所有http://domain.com形式的URL用301重定向轉到  http://www.domain.com,包括:

          http://domain.com/about.htm
          轉到  http://www.domain.com/about.htm



          http://domain.com/dir/index.htm
          轉到  http://www.domain.com/dir/index.htm

          等等,還要用到mod_rewrite:

          Options  +FollowSymLinks
          RewriteEngine  on
          RewriteCond  %{HTTP_HOST}  ^domain.com  [NC]
          RewriteRule  ^(.*)$  http://www.bfzz.com/$1  [L,R=301]

          如果你用的是  Windows主機,應該在控制面板做301轉向設定。

          據我所知,HTML無法做301轉向。在HTML里只能做JS或META  REFRESH,但不是301轉向。HTML一被讀取,就已經返回200  OK狀態碼了。

          下面是struts2中實現301或者302

          其實很easy:

          action的result配置如下:status可以指定狀態碼。
          <result name="to_first" type="httpheader">
              <param name="status">301</param>
              <param name="headers.Location">${object}/l/${city.cityUrl}-${country.countryUrl}/${cityId}/0/0</param>
            </result>

          另外type="redirectAction"時,默認為302跳轉。用fireBug可以看得很清楚
          <action name="Logon" class="tutorial.Logon">
          <result type="redirectAction">Menu</result>
          </action>



          天蒼蒼,野茫茫,風吹草底見牛羊

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          posts - 80, comments - 24, trackbacks - 0, articles - 32

          Copyright © asdtiang

          asdtiang的博客 PaidMailz
          點擊廣告網賺A(每天4個廣告,每個0.0025美元,一個搜索廣告0.03美元)
          主站蜘蛛池模板: 亳州市| 通化县| 利川市| 灵山县| 安陆市| 格尔木市| 岱山县| 贵溪市| 遂平县| 开江县| 翼城县| 彰化市| 察隅县| 比如县| 鸡泽县| 凉城县| 库尔勒市| 屏东市| 普定县| 中山市| 铁岭县| 威信县| 绩溪县| 临泽县| 桃江县| 新民市| 三原县| 崇明县| 乌鲁木齐县| 隆安县| 萝北县| 罗山县| 民和| 呼伦贝尔市| 蒲城县| 前郭尔| 张家口市| 蒙山县| 武冈市| 高青县| 龙川县|