麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 編程設計 > 正文

自動識別WEB和WAP訪客的源碼

2020-06-27 15:48:25
字體:
來源:轉載
供稿:網友
既然要利用已經存在的為HTML瀏覽器編寫的代碼,就需要知道請求是從HTML瀏覽器還是從WML瀏覽器過來的。同樣地,如果想重新引導的HTML瀏覽器直接到相應的HTML文檔上,WML瀏覽器到WML頁面上,以下的PHP代碼就可以做到這些。
<?
// Because this script sends out HTTP header information,
// the first characters in the file must be the <? PHP tag.
// relative URL to your HTML file
   $htmlredirect = "/html/my_htmlpage.html";
// ABSOLUTE URL to your WML file 
   $wmlredirect = "http://wap.mysite.com/wml/my_wmldeck.wml";
   if(strpos(strtoupper($HTTP_ACCEPT),"VND.WAP.WML") > 0)
{// Check whether the browser/gateway says it accepts WML.
     $br = "WML";
   }
   else {
     $browser=substr(trim($HTTP_USER_AGENT),0,4);
     if($browser=="Noki" || // Nokia phones and emulators
        $browser=="Eric" || // Ericsson WAP phones and emulators
        $browser=="WapI" || // Ericsson WapIDE 2.0
        $browser=="MC21" || // Ericsson MC218
        $browser=="AUR " || // Ericsson R320
        $browser=="R380" || // Ericsson R380
        $browser=="UP.B" || // UP.Browser
        $browser=="WinW" || // WinWAP browser
        $browser=="UPG1" || // UP.SDK 4.0
        $browser=="upsi" || // another kind of UP.Browser ??
        $browser=="QWAP" || // unknown QWAPPER browser
        $browser=="Jigs" || // unknown JigSaw browser
        $browser=="Java" || // unknown Java based browser
        $browser=="Alca" || // unknown Alcatel-BE3 browser (UP based?)
        $browser=="MITS" || // unknown Mitsubishi browser
        $browser=="MOT-" || // unknown browser (UP based?)
        $browser=="My S" || // unknown Ericsson devkit browser ?
$browser=="WAPJ" || // Virtual WAPJAG www.wapjag.de
$browser=="fetc" || // fetchpage.cgi Perl script from www.wapcab.de
$browser=="ALAV" || // yet another unknown UP based browser ?
        $browser=="Wapa") // another unknown browser (Web based "Wapalyzer"?)
        {
        $br = "WML";
     }
     else {
       $br = "HTML";
     }
   }
   if($br == "WML") {
// Force the browser to load the WML file instead
    header("302 Moved Temporarily");
    header("Location: ".$wmlredirect);
    exit;
   }
   else {
// Force the browser to load the HTML file instead
    header("302 Moved Temporarily");
    header("Location: ".$htmlredirect);
    exit;
   }
  ?> 
  這個判斷是在服務端完成的, PHP代碼將首先查看網關是否接收text/vnd.wap.vml MIME類型。如果不是,將檢測前面的字符,查看是否為WML瀏覽器。如果不符合,那么就假設為HTML瀏覽器。如果有新的WML瀏覽器,那么ID字符串也要增加。
  這個代碼基于Robert Whitinger([email protected])的代碼,使用了Don Amaro([email protected])提供的列表。
  注意:由于只需要四個字符串就可以辨別,因此例如:"WapIDE-SDK/2.0;(R320s(Arial))" 可以使用“WapI”來代替是可行的做法,也是足夠的。
  同樣的功能也可以通過ASP來解決。先判斷請求的是“/index.wml” 或者 “/index.html” 和所需要的MIME類型。另外以下的腳本辨別的方式和上面不一樣。另外還需要網關告訴服務器它能接收的text/vnd.wap.wml MIME類型。該例子如下所示:
<%
Response.Buffer = TRUE
  Dim IsWap
  httpAccept = LCase(Request.ServerVariables("HTTP_ACCEPT"))
  if Instr(httpAccept,"wap") then
  IsWap=1
  Else Response.Redirect "/index.html" : Response.Flush : Response.End
End if
%>
<%Response.ContentType = "text/vnd.wap.wml"%><?xml version="1.0"?>
<%Response.Flush%>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
  <wml>
  <card id="redirect">
  <onevent type="onenterforward">
  <go href="/index.wml"/>
  </onevent>
  <p>
  <a href="/index.wml">enter</a>
  </p>
  </card>
  </wml>
  <%Response.Flush:Response.End%>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲成人免费网站 | 视频一区二区在线播放 | 国产91精品一区二区麻豆亚洲 | 草久影视 | 国产一级在线免费观看 | 中国av免费在线观看 | 亚洲资源在线播放 | 日本aaaa片毛片免费观蜜桃 | 国产精品久久久久久久娇妻 | 国产亚洲精品久久久久久久久 | 天天草天天干天天射 | 久久久久国产成人免费精品免费 | 激情小说色 | 国产在线地址 | 羞羞视频免费网站含羞草 | 全黄裸片武则天一级第4季 偿还电影免费看 | 亚州精品在线视频 | 中文字幕22页| 在线免费黄色网 | 亚洲精品成人在线视频 | 国产成人高清在线 | 91av日韩 | 曰韩一级片 | 国产中出在线观看 | 在线看日本 | 国产一级一片免费播放 | 欧美日韩亚洲一区二区三区 | 国产欧美亚洲精品 | 99精品视频一区二区 | 久久福利剧场 | 黄色免费小网站 | 高清视频91 | 欧美一级片一区 | 亚洲一区二区三区精品在线观看 | 国产亚洲精品久久久久5区 男人天堂免费 | 国产一区二精品区在线 | 91亚洲免费视频 | av老司机久久 | 国产午夜精品久久久 | 中文字幕在线免费播放 | 久久久久久久国产视频 |