Servidor Web / Nginx

Suponemos que finalmente vamos a querer poner una pagina web. El servidor de web apache es muy conocido y hay mucha documentación sobre él. Justo en padrao sarava encontrarás información de como usar apache en un ambiente parecida al nuestro. Nosotros estamos usando nginx.

http://sentidoweb.com/2007/05/22/nginx-alternativa-a-apache.php http://killmenos9.blogspot.com/2007/11/cmo-instalar-nginx-para-sustituir.html

Instalacion y configuracion

instalamos nginx: 1)

# apt-get install nginx

editamos su configuracion:

# vim /etc/nginx/nginx.conf

la nuestra aparece asi:

user www-data;
worker_processes  1;
error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    include    /etc/nginx/proxy.conf;
    default_type  application/octet-stream;
    access_log  /var/log/nginx/access.log;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;
    gzip  on;
    include /etc/nginx/sites/*;
}

la ulima cosa en el configuracion el la carpeta donde vamos a poner nuestras “virtual hosts”, para permitirnos crear varios paginas, dominios o subdominos. creamos esta carpeta:

# mkdir /etc/nginx/sites/

hay que crear uno que seria el predeterminado:

# vim /etc/nginx/sites/default

dentro de ello tenemos el siguiente:

      server {
      listen       80 default;
      server_name  _ *;
              charset utf-8;
      access_log  /var/log/nginx/access.log;
      location / {
          root   /var/www/nginx-default;
          index  index.html index.htm;
      }
      #error_page  404              /404.html;
      # redirect server error pages to the static page /50x.html
      #
      error_page   500 502 503 504  /50x.html;
      location = /50x.html {
          root   /var/www/nginx-default;
      }
  }

de la misma manera se puede crear un sin fin de “virtual hosts”. solo cambia su “root” y servername, igual como lo harias en apache. ahora reinicamos nginx para cargar los cambios:

/etc/init.d/nginx restart

para utilizar php, sigues el siguente instructivo nginx, php y fastcgi

Configuracion de nginx para el docuwiki

un configuracion de nginx que utiliza fast-cgi, para php, y rewrite para urls boitas. que docuwiki esta construida en php, antes de nada hay que instalar php-fpm con nginx.2)

esto es el configuracion para el docuwiki:

      server {
      listen       80;
      server_name  wiki.acervo.org;
              charset utf-8;
      access_log  /var/log/nginx/wiki-access.log;
      rewrite ^(/)_media/(.*) $1lib/exe/fetch.php?media=$2 last;
      rewrite ^(/)_detail/(.*) $1lib/exe/detail.php?media=$2 last;
      rewrite ^(/)_export/([^/]+)/(.*) $1doku.php?do=export_$2&id=$3 last;
      location / {
          autoindex on;
          index index.php;
          root   /var/www/wiki;
          if (!-f $request_filename) {
              rewrite ^(/)(.*)?(.*)  $1doku.php?id=$2&$3 last;
              rewrite ^(/)$ $1doku.php last;
          }
      }
       location ~ \.php$ {
          fastcgi_pass   127.0.0.1:9000;
          fastcgi_index  index.php;
          fastcgi_param  SCRIPT_FILENAME  /var/www/wiki$fastcgi_script_name;
          include        /etc/nginx/sites/fastcgi.conf;
      }
  }

Configuracion de un proxy para un Zope Virtual Host con Nginx

virtual host con load balancing entre dos instancias de zope

  upstream plumibackend {
      server 127.0.0.1:8080;
      server 127.0.0.1:8081;
  }
              server {
                      listen 80;
                      server_name plumi.acervo.org;
                      access_log  /var/log/nginx/plumi.access.log;
                      location = / {
                              rewrite ^(.*) /plumi0 last;
                      }
                      location / {
                               proxy_pass  http://plumibackend/VirtualHostBase/http/plumi.acervo.org:80/plumi0/VirtualHostRoot/;       
                               proxy_set_header Host $http_host;
                      }
              }
1) as veses al instalar nginx recibimos un error respecto al “invoke-rc.d: initscript nginx”. la solucion encontramos aqui
2) los antingos indicaciones de como hacer lo mismo con php y fastcgi estan aqui
 
nginx.txt · Última modificación: 2009/06/16 20:44 por ashitaka
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki