Tutorial Intermedio de mod_rewrite

by Janeth Kent Date: 18-06-2020 apache mod_rewrite

Con el módulo mod-rewrite, se pueden editar muchas tareas del servidor o los requisitos previos para las tareas de redireccionamiento. Las reglas están archivadas en el archivo .htaccess. El manejo de la diéresis es sólo una de las capacidades de la reescritura de modulación.

Se trata de un módulo para el servidor web Apache y reescribe las URLs solicitadas sobre la marcha. Funciona tanto en un contexto por servidor (Apache v2.x: apache2.conf) como en un contexto por directorio (.htaccess). Puedes encontrar información detallada en la página web del módulo Apache.

1. Las bases

Entonces, ¿qué hace el mod_rewrite?

  1. mod_rewrite activado:
    http://www.example.com/Download
  2. mod_rewrite desactivado:
    http://www.example.com/?page=Download

Aquí hay un breve resumen de las opciones más comunes:

Generando URLs de SEF

Las URL dinámicas pueden ser reescritas usando el motor de reescritura de una manera fácil de usar.

Ejemplo:

URL dinámica:

www.sample.com/kat.php?typ=pagina&typ2=seo

SEF URL después de la mod_rewrite

www.sample.com/categoria/seo

Creando redirecciones a otras URLs

Como parte de las redirecciones 301 , se asegura que sólo una versión del sitio web llegue al índice de los motores de búsqueda.

Ejemplo:

http://ejemplo.com

está permanentemente redirigido a

http://www.ejemplo.com

Exclusión de las visitas de spam

El acceso a ciertos sitios web puede evitarse bloqueando las direcciones IP predefinidas.

2. Cómo habilitar mod_rewrite

Por supuesto, necesitas un servidor web Apache, y el módulo mod_rewrite tiene que ser instalado y activado.

mod_rewrite en su archivo de configuración de Apache (http.conf oder apache2.conf):
/apache/conf/http.conf

desactivado

#LoadModule rewrite_module modules/mod_rewrite.so

activated

LoadModule rewrite_module modules/mod_rewrite.so

AllowOverride All

en tu archivo de configuración de apache (http.conf o apache2.conf), asegúrate de que para el directorio donde está :

AllowOverride None

no esté establecido. Porque entonces los archivos .htaccess son ignorados.

3. .htacces

Si no tienes privilegios para editar el apache2.conf (por ejemplo, si alquilas un espacio web) o simplemente no quieres hacerlo, tienes que usar el método .htaccess (¡no te olvides del punto!).

Reglas comunes

El siguiente comando enciende el módulo:

RewriteEngine on

Así es como un archivo .php puede ser producido como .html:
RewriteEngine on RewriteRule ^(.*).html$1.php => Reescribe todos las URLs con una extensión php en URLs con extensión html. Descripción de los símbolos:

^ Indica el comienzo de una URL (.*) Es un marcador de posición para cualquier cadena de caracteres dentro de una URL $ Al final: el final de una URL $ Al principio: nueva cadena

Así es como una URL dinámica se convierte en una URL estática:
RewriteEngine on RewriteRule ^page_ ([0-9] +).html$ page.php?id=$1 =>Si un usuario recupera page_5.html, esta URL se convertirá internamente en page.php?id=5?. El resultado sería esto

www.domain.com/page_5.html

convertido en:

www.domain.com/php?id=5

Relevancia para la optimización de los motores de búsqueda

Como regla general, las URLs dinámicas pueden ser reescritas como URLs "parlantes" usando el módulo de re-escritura de mod. A menudo se discute en la escena de SEO si esta manipulación de la URL puede conducir a mejores clasificaciones. Los defensores de esta teoría creen que el URL en sí mismo es un factor de clasificación. Sin embargo, faltan pruebas claras que apoyen esta tesis en la práctica. Sin embargo, podemos asumir un efecto indirecto para la optimización de los motores de búsqueda porque los usuarios pueden adivinar antes de hacer clic qué tipo de contenido se puede esperar de una URL SEF. Por consiguiente, una URL tan fácil de usar sirve para crear confianza y también como un estímulo para hacer clic. Si un usuario de Internet pudiera elegir entre un URL dinámico (que a menudo parece algo críptico para los profanos) y una dirección web optimizada, probablemente tendería a elegir esta última.

Las solicitudes también pueden ser redirigidas con el módulo de re-escritura. Los SEO suelen utilizar este método para redirigir permanentemente los dominios de palabras clave al sitio web principal. Se supone que el sitio web principal debe ser reforzado para una palabra clave adicional en particular de esa manera. Las redirecciones no suelen ser consideradas relevantes por los motores de búsqueda. En casos extremos, esta práctica se interpreta incluso como una manipulación de los resultados de la búsqueda. Si no existe otra razón, por ejemplo, el uso a corto plazo de una dirección web pegajosa con fines publicitarios, las redirecciones sólo deben utilizarse para evitar la duplicación del contenido.

 
by Janeth Kent Date: 18-06-2020 apache mod_rewrite visitas : 9048  
 
Janeth Kent

Janeth Kent

Licenciada en Bellas Artes y programadora por pasión. Cuando tengo un rato retoco fotos, edito vídeos y diseño cosas. El resto del tiempo escribo en MA-NO WEB DESIGN AND DEVELOPMENT.

 
 
 

Artículos relacionados

Cómo instalar Caddy Web Server con PHP-FPM en Ubuntu 16.04

El Caddy o Caddy web server es un servidor web de código abierto habilitado para HTTP/2 escrito en Go. Caddy puede funcionar en varios sistemas, incluyendo los que funcionan con…

Solucionar Problemas html acentos y eñes: charset UTF-8 / ISO-8859-1 en PHP

La codificación de las páginas web (charset) es un problema recurrente para los webmasters, porque: Depende del editor en que se haya hecho la web, si en el trabajamos por defecto…