現在、スマートフォンユーザーが多く、ウェブサイトにアクセスする際に、多くの友人が携帯電話を使用してウェブサイトにアクセスしています。これは、PC版だと、間違いなく見栄えが悪くなります。そのため、多くの企業が WAP サイトを構築していますが、ユーザーが携帯電話から Web サイトにアクセスしているのか、PC からアクセスしているのかを判断するにはどうすればよいでしょうか。以下にいくつかの方法をまとめました。
最近、携帯電話のクエリ システムに取り組んでいましたが、これには当然この問題が含まれていました。次に、PHP を使用して、WAP の理解に基づいて、ユーザーのアクセス方法が WAP アクセスによるものか、直接コンピューター アクセスによるものかを判断します。
まずは最も根本的な解決策について話しましょう:
携帯電話からアクセスする場合、ユーザーエージェント情報には携帯電話番号の情報も含まれますので、携帯電話番号を取得できれば、確実にモバイルwap経由でアクセスできます。ただし、チャイナモバイルは現在ユーザーエージェント情報をブロックしているため、携帯電話番号を取得することはできません。関係のある友人は携帯会社に連絡し、WAP Web サイトサーバーの IP をチャイナモバイルに送信してホワイトリストに追加すると、UA 情報を取得できます。現在、チャイナユニコムは携帯電話番号を直接取得できるため、このソリューションはユニコムユーザーに完全に実装できます。
次に、私の解決策について話しましょう:
携帯電話からのアクセスの原理は、携帯電話会社のプロキシサーバーを経由してアクセスすることです。そうすれば、通常のコンピュータがプロキシ サーバーを使用していることがわかります。携帯電話がプロキシサーバー経由でアクセスする場合、http ヘッダー情報には必ず via という情報が含まれます。この情報は貴重な判断情報を提供します。
たとえば、Henan Mobile が取得する経由情報は次のとおりです:
http/1.1 hazz-b-gw001-wap(infox-wisg、huawei technology)
河南聯通の経由情報は次のとおりです:
zxwapゲートウェイ、zteテクノロジー
他の地方の http ヘッダー情報も同様です。モバイル アクセスが可能かどうかを判断する方法は、http の via 情報文字列を取得して、wap 文字が含まれているかどうかを確認します。含まれている場合は、携帯電話でアクセスします。この結果、誰も携帯電話へのアクセスを偽ることはできず、その判断は完全に正確です。当然のことながら、これはインターネット上で人気のある携帯電話の wap シミュレーターもブロックし、根本的にブロックします。
操作コードも非常にシンプルです:
コードは次のとおりです | コードをコピー |
//xhat で wap かどうかを確認する 関数 check_wap() { return stristr($_SERVER['HTTP_VIA'],"wap") true : false; } // チェックしてください |
私が検討した情報によると、この方法は、これまでのところ、インターネット上での携帯電話のアクセスを判断する最も正確かつ簡単な方法であるはずです。
iPhoneスマートフォン
discuzのiPhone版は基本的に完成しており、アクセスしやすいようにiPhoneからのアクセスをホームページ上で直接判定して直接ジャンプします
上記のコードを使用して判断すると、テスト結果は非常に良好です。
私が使用している、より包括的な判断クラス
コードは次のとおりです | コードをコピー |
/* |