¿Tienes una cuenta? identificate: Usuario Contraseña o puedes obtener una gratis.

ToRo Blog

¡Al pesebre... fieras!

29
octubre
2008

nginx, algunos tips.

Supongamos que tenemos una tienda, y queremos mostrar nuestros artículos de la forma:

http://www.example.org/producto/930 en lugar de http://www.example.org/producto.php?id=930

Entonces en la configuración de nginx, dentro del bloque de server { } añadimos lo siguiente:

rewrite ^/producto/([0-9]+)$ /producto.php?id=$1 last;

De tal forma que las peticiones hacia /producto/id se vayan al archivo php que manejará las peticiones. Las aplicaciones que se le pueden dar a esto son ilimitadas, se pueden pasar tantos parámetros como coincidan con las expresiones regulares a un archivo.

Veamos otro ejemplo, digamos que queremos hacer un sistema de blogs, donde el usuario sea mostrado como http://www.example.org/usuario, sería agregar a la configuración algo como:

    server {
       listen example.org:80;
       server_name example.org;
       location / {
          root /var/www/users/;
          index index.php;
          if (!-e $request_filename) {
             rewrite ^/(.*) /users.php?user=$1 last;
          }
       }
       location ~ .php$ {
          fastcgi_pass   127.0.0.1:8000;
          fastcgi_index  index.php;
          fastcgi_param  SCRIPT_FILENAME  /var/www/users$fastcgi_script_name;
          include        fastcgi_params;
       }
    }

De esta forma, le decimos que si no existe el archivo /algo entonces lo mande a /users.php?user=algo, pero eso será transparente para quien nos visita ya que verá http://example.org/algo. Como se puede ver, es muy sencillo usar las expresiones regulares en nginx, por lo que se puede suplir perfectamente el módulo mod_rewrite de Apache por el de nginx.

(para ver la instalación de nginx puedes darle un vistazo a un post que escribí sobre el mismo).

Almacenado en Tips, Tutoriales, Sofware libre, Trucos, Nginx [ Enlace | 5 comentarios ] del.icio.us del.icio.us Estrella este post *****
comparte esto
Comparte esta entrada (del.icio.us, por correo, etc) o agrega este blog a tu Google Reader.

Entradas relacionadas:
  1. Compilar y configurar nginx con php
  2. cambios...
  3. PlayStation 2
  4. Semana Linux UNAM Naucalpan
  5. Correo

Han escrito 5 comentarios de «nginx, algunos tips.»

foto germangv
Miércoles 29 de octubre, 2008 11:47.

a ver otra vez? pero mas despacio y en español XDD

foto linuxman
Miércoles 29 de octubre, 2008 16:09.

Veo que Mexico Diario ya corre en nginx ¿Que tal? ¿Como corre la cosa esta?

foto andresn
Miércoles 29 de octubre, 2008 16:49.

ea ea barajala mas despacio, esta muy interesante que nos compartas eso, pero mas despacio, chin necesito una lap para hacer experimentos

foto andresn
Miércoles 29 de octubre, 2008 16:49.

nginx es en lugar de apache?, chin barajala mas despacio, oye toro de verdad ese tipo de articulos son muy buenos, pero danos mas info please

foto ToRo
Miércoles 29 de octubre, 2008 16:51.

Apache WebServer es el servidor web mas usado en el mundo… es el servidor por excelencia, sin embargo con grandes cantidades de tráfico y manejo de información, se ha comprobado que no es la mejor opción.

Sitios con mucho tráfico o tienen muchos servidores o tienen aplicaciones alternas como lighttpd o nginx en este caso, tienen mejor rendimiento, etc. Al ser aplicaciones mas ligeras, tienen menos opciones pero cumplen bien para lo que fueron hechos… Apache es un monstruo, millones de líneas de código y muchos módulos y aplicaciones específicas.

Si usted tiene una cuenta en ymipollo.com, identifíquese:
Usuario: Password: (recordar identificación en este blog)
De lo contrario, escriba sus datos (todos los campos son obligatorios.):
Nombre: Correo E.:
Blog/Web: recordar datos.
[ si eres visitante puedes obtener tus comentarios con foto suscribiendote a gravatar. Tenga en cuenta que como usuario anónimo, su dirección IP será almacenada y mostrada al dueño de la entrada en cada comentario. ]
Escriba su comentario:
Por favor escriba respecto al post, procure revisar su ortografía. Si su comentario no es respecto al tema, por favor no lo haga.

Usted escribirá este mensaje como:
Es posible que su comentario no aparezca de forma inmediata (o que nunca aparezca) eso depende de la decisión del autor de este blog.

enviarme correo cuando alguien comente suscribirse a este post.