htaccess [UserAgent]: Lakukan tindakan tertentu bergantung pada UserAgent pengguna

Lama saya meletakkan dua artikel mengenai .htaccess, dan kerana sudah lama, saya akan menyegarkan asasnya sedikit:

Apa itu htaccess?

Di setiap folder yang telah kita kongsi (dihosting) kita dapat meletakkan file . Htaccess (perhatikan noktah di awal nama, ini menunjukkan bahawa ia tersembunyi). Fail ini akan menjadi polisi kami untuk memanggilnya dengan cara tertentu, kerana di dalamnya kami dapat menulis peraturan atau norma yang akan membantu kami memanipulasi / mengurus akses ke folder yang sama di mana failnya, ke folder dan fail (dan subfolder) yang ini sama mengandungi.

Hanya meletakkan. Sekiranya saya mempunyai folder "/ujian /", Menggunakan a . Htaccess Saya dapat mengkonfigurasi IP mana yang saya mahu mereka akses dan mana yang tidak, konfigurasikan jika saya mahukan apabila seseorang memasuki folder ini secara automatik akan mengarahkannya ke laman web lain, dan sangat lama dll.

Saya sangat mengesyorkan agar anda membaca dua artikel sebelumnya:

Mari beralih kepada perkara yang akan saya bahaskan secara khusus dalam catatan ini.

Utiliti No.1

Apa yang ingin kami lakukan ialah:

  1. Sekiranya pengguna menggunakan Internet Explorer jangan buka laman web, yang mengarahkan anda ke laman web dari Firefox agar penyemak imbas sebenar dipasang.

Mengetahui bahawa PenggunaAgent yang mengenal pasti Penjelajah Internet Ia adalah: MSIE

Kami sudah mempunyai semua yang kami perlukan 🙂

Logik operasi adalah:

  1. Kenal pasti sama ada pengguna menggunakan IE atau tidak.
  2. Sekiranya anda menggunakan IE, laman web ini tidak akan menunjukkan kepada anda, sebaliknya melakukan perkara ini yang akan terjadi ialah ia akan membuka laman web Mozilla.
  3. Sekiranya anda tidak menggunakan IE, laman web kami akan dibuka tanpa masalah.

Untuk mencapai ini, kita mesti memasukkan fail .htaccess (jika tidak ada, buat) baris berikut:


RewriteEngine On
RewriteCond% {HTTP_USER_AGENT} ^. * MSIE. * $ [NC] RewriteRule. * Http://www.mozilla.org/en-US/firefox/new/

Dan ini, semudah itu.

Dengan garis-garis ini yang kami tunjukkan adalah:

  1. Sekiranya modul mod_rewrite aktif:
  2. Mulakan mesin tulis semula dan:
  3. Sekiranya syarat dipenuhi bahawa di suatu tempat di UserAgent mengandungi MSIE maka:
  4. Terapkan peraturan: mengarahkan pengguna ke laman web - »Http://www.mozilla.org/en-US/firefox/new/
  5. Selesai sekarang, berhenti menggunakan modul mod_rewrite

Tentunya mereka boleh menukar alamat yang akan diarahkan pengguna, ini hanyalah contoh.

Sekarang kita pergi dengan utiliti lain ... 😉

Utiliti No.2

Sebagai contoh, kami ingin meletakkan beberapa kandungan di internet dalam folder di pelayan web kami, tetapi kami hanya ingin orang tertentu mengaksesnya, kami dapat melindungi folder dengan kata laluan menggunakan Apache, ya, tetapi jika kami tidak ingin menyulitkan begitu banyak ... kita dapat:

  1. Baca UserAgent pengguna.
  2. Sekiranya UserAgent mempunyai perkataan "topsecret" di suatu tempat:
  1. Biarkan dia mengakses folder
  • Sekiranya UserAgent TIDAK mempunyai perkataan "topsecret" di mana sahaja:
  1. Paparkan tanda Akses Ditolak.

Untuk mencapai ini, kodnya sangat mirip dengan yang sebelumnya ... variasi utama adalah tanda seru «!»Di barisan pengesahan UserAgent:


RewriteEngine On
RewriteCond% {HTTP_USER_AGENT}! ^. * Topsecret. * $ [NC] RewriteRule. * Http: //www.google.com

Di sini tidak banyak yang dapat dijelaskan kerana saya sudah menjelaskan yang sebelumnya, seperti yang telah saya katakan, ini mempunyai perbezaan utamanya sebagai tanda seru, yang bermaksud:

  • Sekiranya TIDAK mengandungi topsecret di suatu tempat di UserAgent ...

Baiklah ini semua buat masa ini 😀

Saya harap ia berguna, masih banyak yang perlu dibincangkan .htaccess, Masih banyak yang perlu saya pelajari 🙂
salam


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   k301 kata

    Saya tidak tahu sama ada mahu mengulas mengenai perkara ini, cuma tambahkan bahawa pada tahun 2012, kerentanan htaccess disebutkan. Dalam dragonjar mereka memperincikan semuanya dengan sangat baik dan menerangkan bagaimana membetulkannya sekiranya seseorang berminat:

    enlace

    1.    Martin kata

      @KZKG sumbangan yang sangat baik, sangat baik.
      @ k3D1 Saya segera mengingati kerentanan itu tetapi tidak pasti dengan apa (Jerman akan melawat saya !?
      Terima kasih kerana pautan!

      1.    KZKG ^ Gaara kata

        Terima kasih, kerana saya tidak menyumbang dari segi berita, saya cuba menyumbang dari segi perkara yang lebih teknikal 🙂

    2.    KZKG ^ Gaara kata

      Terima kasih, saya tidak tahu mengenai perkara ini 😉

  2.   k301 kata

    Saya pernah menghantar komen sebelum ini tetapi nampaknya ia belum diposkan. Bagaimanapun, saya mengulanginya bagi mereka yang berminat, ia adalah penerbitan di dragonjar untuk mencegah kerentanan htaccess:
    http://www.dragonjar.org/htexploit-herramienta-para-saltar-proteccion-con-archivos-htaccess.xhtml

    1.    KZKG ^ Gaara kata

      Maaf, penapis anti-SPAM kadang-kadang melakukan perkara yang saya tidak faham, ada beberapa komen dalam barisan SPAM tanpa sebab yang jelas, saya sudah menyetujuinya.
      Minta maaf lagi.

      1.    k301 kata

        Tidak ada masalah, selalu baik bahawa komen yang mengandungi pautan mesti disetujui, kekeliruan saya datang dari bagaimana yang pertama menghantar anda dengan tag html, saya fikir ada masalah.

        Dan apa-apa, bergembiralah dengan catatan teknikal yang sangat baik, di blog ini saya telah menemui banyak bahan yang sangat baik.

  3.   elynx kata

    Ditambah ke Kegemaran!

    1.    KZKG ^ Gaara kata

      ^ - ^

  4.   Xavier kata

    Hello,
    Bagaimana saya boleh melakukan perkara yang sama seperti yang anda jelaskan untuk firefox tetapi untuk penjelajah internet

    1.    KZKG ^ Gaara kata

      Saya tidak faham apa yang anda mahu buat.