htaccess [UserAgent]: Fer determinada acció depenent de l'UserAgent de l'usuari

Fa bastant que vaig posar dos articles sobre .htaccess, I atès que ha passat ja un temps, refrescaré una mica la base:

Què és htaccess?

A cada carpeta que tinguem compartida (hosteada) podem posar un arxiu . Htaccess (notin el punt a l'inici de el nom, això indica que està ocult). Aquest fitxer serà el nostre policia per dir-ho d'alguna manera, ja que en ell podem escriure regles o normes que ens serviran per manipular / administrar l'accés a aquesta mateixa carpeta on estigui l'arxiu, a la carpeta i als arxius (i subcarpetes) que aquesta mateixa contingui.

Dit de manera simple. Si tinc hosteada la carpeta "/test /", Fent ús d'un . Htaccess puc configurar què IPs desitjo que accedeixin i quins no, configurar si desitjo que quan algú entri a aquesta carpeta automàticament li redireccioni a un altre lloc, i un MOLT llarg etc.

De debò els recomano que llegeixin els dos articles previs:

Passem una mica al que abordaré en aquest post específicament.

utilitat No.1

El que volem fer és:

  1. Si un usuari fa servir Internet Explorer no li obri el lloc, que li redireccioni a l' lloc de Firefox perquè s'instal·li un navegador de veritat.

Sabent que el UserAgent que identifica Internet Exploter és: MSIE

Ja tenim tot el necessari 🙂

La lògica de funcionament seria:

  1. Identificar si l'usuari fa servir IE o no.
  2. Si fa servir IE no li mostrarà el lloc, en comptes de fer això el que succeirà és que li obrirà el lloc de Mozilla.
  3. Si no fa servir IE li obrirà el lloc nostre sense problemes.

Per aconseguir això hem de posar al nostre arxiu .htaccess (si no existeix, el creen) les següents línies:


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

I això és tot, així de simple.

Amb aquestes línies el que indiquem és:

  1. Si el mòdul mod_rewrite està actiu:
  2. Inicia el motor rewrite i:
  3. Si es compleix la condició que en algun lloc de l'UserAgent conté MSIE llavors:
  4. Aplica la regla de: redirecciona a l'usuari a el lloc - »Http://www.mozilla.org/en-US/firefox/new/
  5. Es va acabar ja, deixa de fer servir el mòdul mod_rewrite

Òbviament, poden canviar la direcció a la que serà redireccionat l'usuari, aquest és només un exemple.

Ara anem amb una altra utilitat ... 😉

utilitat No.2

Per exemple, desitgem posar algun contingut a internet en alguna carpeta del nostre servidor web, però desitgem que només determinades persones accedeixin, podem bé protegir la carpeta amb contrasenya utilitzant Apache sí, però si volem no complicar-nos tant ... podem:

  1. Llegeix el UserAgent de l'usuari.
  2. Si el UserAgent té la paraula «topsecret» en algun costat:
  1. Deixa-ho que accedeixi a la carpeta
  • Si el UserAgent NO té la paraula «topsecret» en cap costat:
  1. Mostra un cartell d'Accés Denegat.

Per aconseguir això, el codi és extremadament similar a l'anterior ... la principal variació és el símbol d'exclamació «!»En la línia de verificació de l'UserAgent:


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

Aquí no hi ha molt a explicar perquè ja vaig explicar l'anterior, aquest com ja vaig dir té com a principal diferència el símbol d'exclamació, la qual cosa significa:

  • Si NO conté topsecret en algun costat de l'UserAgent ...

Bé, això és tot de moment 😀

Espero els hagi estat d'utilitat, encara hi ha molt per parlar de .htaccess, Encara em queda molt per aprendre 🙂
Salutacions


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   k301 va dir

    No sé si comentar això, només afegir que en el blackhat de l'2012 es va esmentar una vulnerabilitat de htaccess. En dragonjar ho detallen tot molt bé i expliquen com corregir-per si algú li interessa:

    Enllaç

    1.    Martin va dir

      @KZKG molt bona aportació, excel·lent.
      @ K3D1 vaig recordar de seguida de la vulnerabilitat però no tenia clar de què es tractava (m'estarà visitant l'alemany !? dj pucha!).
      Gràcies pel link!

      1.    KZKG ^ Gaara va dir

        Thanks, ja que no aporto pel que fa a notícies, intento aportar pel que fa a coses més tècniques 🙂

    2.    KZKG ^ Gaara va dir

      Gràcies, no coneixia d'això 😉

  2.   k301 va dir

    He llançant un comentari abans però a l'sembla no s'ha publicat. En fi, ho repeteixo per a qui li interessi, és una publicació en dragonjar per prevenir una vulnerabilitat de htaccess:
    http://www.dragonjar.org/htexploit-herramienta-para-saltar-proteccion-con-archivos-htaccess.xhtml

    1.    KZKG ^ Gaara va dir

      Els meus disculpes, el filtre antiSPAM de vegades fa coses que ni jo entenc, havien alguns comentaris en cua de SPAM sense motiu aparent, i als vaig aprovar.
      Disculpes de nou.

      1.    k301 va dir

        Cap problema, sempre és bo que els comentaris que continguin enllaços hagin de ser aprovats, el meu confusió vi de com el primer li enviï amb una etiqueta html, vaig pensar que hi havia hagut algun problema.

        I res, ànim amb els post tècnics que estan molt bé, en aquest blog he trobat molt material excel·lent.

  3.   Elynx va dir

    Afegit a Favorits!

    1.    KZKG ^ Gaara va dir

      ^ - ^

  4.   Javier va dir

    Hola,
    com podria fer el mateix que expliques per firefox però per internet explorer

    1.    KZKG ^ Gaara va dir

      No vaig entendre què és el que vols fer.