Lighttpd con Apache

Comentarios

Uno de mis sitios web está experimentando un crecimiento fenomenal y después de la optimización de las consultas de base de datos y el uso de memcached , decidí que era hora de utilizar otro servidor web para servir a los medios de comunicación estática. Aquí está cómo hacerlo.

Le recomiendo que eche un vistazo en el post anterior que escribí acerca de cómo configurar el servidor web para trabajar con Django porque voy a estar manipulando algunos archivos que he hablado allí. Si no está seguro acerca de las rutas correctas necesarias para su servidor, utilice el otro puesto como guía. He instalado Apache Lighttpd y configurado en mi Slicehost VPS, que es una empresa que le recomiendo. Si usted decide inscribirse con ellos, sería impresionante b si mi correo electrónico (inerte@gmail.com) como una referencia, y / o utilización en este enlace que se encarga de establecer su referencia para mí.

Vamos a usar Lighttpd en un puerto diferente a Apache para servir archivos de un directorio específico basado en el nombre de dominio, todo transparente a los usuarios navegar por su sitio web. Si no introdujo cambios en mi código del sitio web, el servidor (Python) o cliente (HTML) secundarios.

Instalar Lighttpd

Mi servidor se ejecuta Ubuntu por lo que sólo ejecutó el comando para instalar Tras Lighttpd:

  $ Apt-get install lighttpd 

Editar configuración de Lighttpd de archivo:

  $ Vi / etc / lighttpd / lighttpd.conf 

Server.port comentario en la línea (la mía era la 60):

  server.port = 81 

Mod_evhost Habilitar el módulo. ¿Esto nos ayudará a utilizar un directorio diferente en función del nombre de dominio. Simplemente elimine la línea 19 (dentro de server.modules).

Agregue lo siguiente en alguna parte, ¿Qué dice solicitudes de yourdomain.com debe buscar los archivos en / var / www / yourdomain.com / web /. Lo hice en la línea 118, después de que el patrón de evhost.path ejemplos.

  $ HTTP ["host"] = ~ "\ tudominio. Com" (
     evhost.path-patrón = "/ var / www / yourdomain.com / web /"
 ) 

Inicio lighttpd:

  $ / Etc / init.d / lighttpd 

Apunte su navegador a su servidor para ver si está funcionando Lighttpd:

http://your.ip.address:81/

Usted necesita ver algo como esto, haga clic (en la imagen para una versión más grande):

Lighttpd default page

Si cuenta con directorios en / var / www /, los nombres de ITS para añadir la url para ver si está cumpliendo correctamente lighttpd ellos (debería):

http://your.ip.address:81/yourdomain.com

Configurar Apache

Para servir de manera transparente archivos con Lighttpd de Apache, necesita habilitar proxy en Apache:

  $ Ln-s / etc/apache2/mods-available/proxy.load / etc/apache2/mods-enabled /
 $ Ln-s / etc/apache2/mods-available/proxy.conf / etc/apache2/mods-enabled /
 $ Ln-s / etc/apache2/mods-available/proxy_connect.load / etc/apache2/mods-enabled /
 $ Ln-s / etc/apache2/mods-available/proxy_http.load / etc/apache2/mods-enabled / 

proxies sin garantía son usados por los spammers para Apache viene vigilado contra malas configuraciones. Es necesario editar este archivo:

  $ Vi / etc/apache2/mods-available/proxy.conf 

Decir, cuando el trabajo de proxy y quién tiene acceso a ella. Vuelva a colocar el * con 127.0.0.1, y descomentar la línea Allow from. El resultado final es la siguiente:

  <Proxy 127.0.0.1>
         AddDefaultCharset fuera
         Orden negar, permiten
         Denegar de todos los
         Deje de 127.0.0.1
 </> Proxy 

Configurar el host virtual

  $ Vi / etc/apache2/sites-available/yourdomain.com 

Añadir esta <VirtualHost> en algún lugar dentro:

  ProxyRequests Off
 En ProxyPreserveHost
 ProxyPass / http://127.0.0.1:81/ web
 ProxyPassReverse / http://127.0.0.1:81/ 

Ha terminado con todas las configuraciones. Ahora vuelva a cargar los módulos de Apache y reiniciar el servidor:

  $ / Etc/init.d/apache2 reload
 $ Apache2ctl reiniciar 

Todo debería estar trabajando. Si obtiene un error, tratar de deshacer algunos pasos y después de cada cambio, volver a cargar Apache y reiniciar Apache y Lighttpd para ver cuando se rompió. Si va a http://your.ip.address, debería ver todo el contenido de / web / se carga correctamente. ¿Cómo sabe usted que está siendo servida por Lighttpd en lugar de Apache?

Esto debe decirle a Apache está sirviendo a la página:

  curl-I http://your.ip.address/ 

Si bien esto debería decirle Lighttpd es servir a la disposición:

  curl-I http://your.ip.address/web/some.file 

Si tiene cualquier duda o problema, por favor comentario y voy a tratar de ayudarle.

  • Gracias;). Buen post!
  • Erik A.
    No veo la parte donde yo digo lighty para conectarse a Apache .. me estoy perdiendo algo? ¿Hay algún tipo de magia pasa?
  • Me voy a mudar a partir de MediaTemple Slicehost, yo podría necesitar algo de ayuda. Tal vez pueda registrarse a través de su enlace, mándame un correo electrónico a hablar de esto.

    gracias
  • Adán
    Muchas gracias, yo había estado tomando el pelo Tratando de octubre de este durante horas, solo tengo trabajo gracias a sus instrucciones:)
  • viru
    Algunos proveedores de Internet da más bandtwith en el puerto 80 y menos en cualquier otro puerto. Creo que usted debe separar o utilizar IP de proxy con el puerto 80 para los archivos estáticos.
  • Juliano
    Es por eso que he dejado el puerto 8080 ahora;)
    Funciona como un encanto con lighty, y ahora se considera la URL de todos modos.
  • inerte
    No está mal, sólo las imágenes, ¿habría 81 en la URL. Es sólo más guapa sin él.
  • Juliano
    ¿Por qué no sólo tiene que utilizar lighty directamente, me refiero a especificar todos los enlaces con el puerto 81? ¿Podría ser malo?
  • Oración
    lighttpd es más rápido y puede manejar más solicitudes por segundo y consume menos recursos, Apache es el proceso de pesado y consume muchos recursos, por lo que es mejor proxy de Apache a lighttpd.
  • inerte
    Hola Animesh! No tengo ni idea:) Supongo que eso es una buena pregunta, y que se merece algunos puntos de referencia. Lamentablemente no voy a tener tiempo suficiente en las próximas semanas, ellos de otra manera yo de mí mismo.

    Personalmente, mi apuesta es que no importa. De cualquier manera, Will Be peticiones pasan a cada servidor web, así que supongo que funcionaría de la misma. La única diferencia es que está haciendo la representación, algo que probablemente muy rápido en ambos servidores.
  • Animesh
    ¡Hola

    Mi duda ha sido .. Si tenemos lighttpd (o cualquier otro rápido / servidor web claro) proxy el contenido dinámico pesado para el servidor web, o debería ser el servidor web proxy para lighttpd pesados (como lo has hecho).

    ¿Qué b mejor. lighty delante de apache o apache frente a lighty?
blog alimentado por los comentarios Disqus

Portugus flagItaliano flagCoreano flagChins (simplificado) flagEnglish flagAlemo flagFrancs flagEspanhol flag
Japons flagrabe flagRusso flagHolands flagBlgaro flagTcheco flagCroata flagDinamarqus flag
Finlands flagHindu flagPolons flagRomeno flagSueco flagGrego flagNoruegus flag 
By N2H
Dolet 96 de descuento en alojamiento DreamHost!
Utilice el PROMO "CODE" inercia. LAMP con 20GB de espacio y 1 TB de transferencia.

Artículos Relacionados

  • No hay publicaciones relacionadas

Categorías