Saya memiliki beberapa pengkodean khusus yang hanya berfungsi untuk browser HTML5 (hal-hal geolokasi sederhana). Saya ingin mengarahkan pengguna iPhone dan Android ke versi m.example.com situs web saya. Bagaimana cara terbaik untuk melakukan ini?
sumber
Pertanyaan Anda menyentuh dua bagian .. pengalihan dan kompatibilitas HTML5.
Pengalihan
Saya menggunakan .htaccess berikut:
Untuk php Anda dapat menggunakan perpustakaan ini: http://detectmobilebrowsers.mobi/ ... tetapi saya sangat menyarankan menggunakan htaccess untuk memproses waktu dan keamanan.
Anda dapat menemukan beberapa contoh tambahan di sini
http://ohryan.ca/blog/2009/02/18/revisiting-mobile-redirection-using-htaccess-rewrite-rules/
Kemampuan browser
Karena ponsel Android saya tidak memiliki masalah dengan HTML5 dengan kode geolokasi. Anda dapat mempertimbangkan untuk menggunakan Perpustakaan Javascript Modernizr untuk mendeteksi kemampuan browser klien yang mengunjungi halaman Anda.
Yang sangat baik HTML5 boilerplate template menggunakan modernizr keluar dari kotak untuk mendukung semacam ini kebutuhan.
Pendapat saya adalah: Saya sarankan untuk menggunakan metode htaccess untuk semuanya kecuali ponsel dan browser terbaru yang didukung oleh modernizr dan biarkan pengguna Android dan iPhone diperiksa oleh Modernizr untuk dukungan fitur html5 dan arahkan "istirahat" pada versi "tanpa geolokasi" Anda.
Contoh modernizr:
Semoga ini membantu
sumber
Jika Anda mengode dengan PHP, Anda bisa menggunakannya
$_SERVER['HTTP_USER_AGENT']
untuk memeriksa header UserAgent, yang dikirim hampir oleh perangkat seluler utama apa pun ke skrip PHP. Kemudian, bandingkan nilai header ini dengansubstr
fungsinya dengan apa pun yang diperlukan di dalamnya.Misalnya, perangkat Apple akan selalu memiliki sub-string 'iphone' atau 'ipad'; Perangkat Android akan selalu memiliki 'android'. Hampir setiap perangkat seluler memiliki sub-string 'ponsel' yang tercantum di tajuk ini.
sumber