Archivo de la etiqueta: nginx

Como Obtener un Certificado SSL Gratis (letsencrypt) Y Configurarlo para Nginx

Asi mismo como dice el titulo, un certificado ssl gratis, ya no tenemos que pagar para que nuestra pagina aparesca como segura sino que podemos obtenerlo gratis gracias al proyecto letsencrypt.

El proyecto letsencrypt es una iniciativa para contrarrestar este sistema / monopolio de los ssl ofreciendo una alternativa gratis, hasta el momento se encuentra en una etapa beta y queda a nuestro criterio usarlo o no. Los certificados generados por este proyecto duran solo 90 dias luego de eso tenemos que generar otro con ellos mismo, pensaran que es poco tiempo pero por que preocuparse “esto es gratis” podemos actualizar sin costo alguno la vigencia de nuestros certificados sin problemas.

Sigue leyendo

Load Balancer Nginx

Cada dia las aplicaciones se convierten en mas concurrentes y en ocasiones nuestros servidores no dan abasto para tanta carga y da la necesidad de poder distribuir el peso de las aplicación en mas de un servidor (Divide y conquista).

La cosa es que este concepto de balanceo de cargas puede ser implementado desde servidores web hasta servidores de base de datos, ejemplo puedo balancear la carga de un servidor mysql o MongoDB (Eso sera ya otro tutorial 🙂 ).
Sigue leyendo

LargeEntity

Crear host virtual Apache – Nginx

Apache y Nginx los servidores web mas usados en la web de hoy dia, cada uno con sus ventajas y desventajas ( Este no sera un post para nombrarlas ).

Este tutorial es para cuando la necesidad de poder hostear mas de un site en un mismo servidor y necesitamos que cada uno responda a un dominio distinto, el proceso es bien simple y facil.

Apache

Los archivos vhost estan situados en directorios distintos segun el sistema operativo:

Vhost File
  • Si estan usando wamp estan en la caperta bin/apache/conf/extras/vhost
  • Ubuntu, /etc/apache2/site-avaliable
  • centos /etc/httpd/conf.d
Conf file
  • Si estan usando wamp estan en la caperta bin/apache/conf/httpd.conf
  • Ubuntu, /etc/apache2/httpd.conf
  • Centos /etc/httpd/conf/httpd.conf

Una vez localizados estos archivos es necesario comprobar algunas configuraciones

  • Asegurar que no este comentado esta opacion Include conf.d/*.conf
  • Asegurar que esta opcion no este comentada tampoco NameVirtualHost *:80

Luego de haber configurado nuestro http.conf y localizado donde colocar los vhost files proceder a crearlos.

Ejemplo 1:

Este vhost servira para cuando accedan a dominio.com el projecto a mostrar seria el de la carpeta /carpeta_to_projecto/

    Listen 80

   <VirtualHost *:80>
        DocumentRoot /carpeta_to_projecto/
        ServerName dominio.com
    </VirtualHost>
Ejemplo 2:

Con este ejemplo podran hacer lo mismo que en el anterior con la salvedad de que este si identifica los enlaces simbolicos ( FollowSymLinks ) y les permitiras listar los archivos de una carpeta ( Options Indexes ),la opcion de AllowOverride all es muy usada por muchos frameowrks php para crear sus rutas si esta ocion no existe su framework no podra funcionar chevere.

    Listen 80

    <VirtualHost *:80>
        DocumentRoot /var/www/test_project/
        ServerName projecto.com

        <Directory /var/www/test_project>
            AllowOverride all
            Options Indexes FollowSymLinks
        </Directory>
    </VirtualHost>

Luego de crear sus vhost files es cuestion de reiniciar el servicio de apache y todo estara funcionando (Si todo le sale bien).
**Los vhost files deben guardarce con extencion .conf sino apache no sabra que son vhost.conf

Nginx

Los archivos vhost en nginx esta situados en /etc/nginx/conf.d/ a menos que estes en uguntu estaran en /etc/nginx/sites-available/ (Tenia que ser un ubuntu :/ ).

Ejemplo 1:

El atributo location es muy usado para algunos frameworks que necesitan ubicar la direccion de los archivos estaticos (.js/.css/.imgs).

	server {
	        listen   80;
	        
	        root /var/www/projecto;
	        index index.html index.htm;

	        server_name nightdeveloper.net;

                location / {
                    try_files $uri $uri/ =404;
                }
	}

Referencia Nginx
Referencia Apache