Primero que nada se utilizará Debian porque consume menos ram que Centos, ya que esta configuración es una de las que mejores resultados nos deberían dar en lo que se refiere a consumo de ram (soy prácticamente un novato en el tema, pero vamos que se da un paso a la vez).
Para empezar, nuestro servidor será instalado en una máquina con este cpu:
root@server:~# cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU L5420 @ 2.50GHz stepping : 10 cpu MHz : 2248.535 cache size : 6144 KB physical id : 0 siblings : 4 core id : 0 cpu cores : 4 apicid : 0 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 5000.00 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management:
Como se puede ver, nada del otro mundo, pero por el costo está bastante bien, lo siguiente será actualizar nuestro servidor utilizando el siguiente comando
root@server:~# apt-get update && apt-get upgrade
Probablemente se demorará un poco, verás apróximadamente lo siguiente:
Get:1 http://debrepo.mirror.vpslink.com lenny Release.gpg [386B] Get:2 http://debrepo.mirror.vpslink.com lenny Release [63.2kB] Get:3 http://debrepo.mirror.vpslink.com lenny/main Packages [5295kB] Get:4 http://security.debian.org lenny/updates Release.gpg [197B] Get:5 http://security.debian.org lenny/updates Release [40.8kB] Get:6 http://debrepo.mirror.vpslink.com lenny/contrib Packages [76.1kB] Ign http://security.debian.org lenny/updates/main Packages/DiffIndex Get:7 http://security.debian.org lenny/updates/contrib Packages [14B] Get:8 http://security.debian.org lenny/updates/main Packages [50.6kB] Fetched 5526kB in 4s (1330kB/s) Reading package lists... Done ...
Instalando el servidor
El servidor ya está arriba y corriendo, así que vamos por muy buen camino, ahora necesitamos instalar el servidor web, como ya dice el título, esta vez se tratará de lighttpd, que a mi gusta tiene la gran particularidad de que es sencillo instalar sitios nuevos, comenzamos:
root@server:~# apt-get install lighttpd
Veremos algo más o menos así:
Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: ... Setting up libterm-readkey-perl (2.30-4) ... Setting up libterm-readline-perl-perl (1.0302-1) ... Setting up lighttpd (1.4.19-5) ... Starting web server: lighttpd.
Ahora podemos ver que:
root@server:~# ps -u www-data u USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND www-data 1690 0.0 1.5 5416 1008 ? S 07:17 0:00 /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf
Lo siguiente que necesitamos, es crear una estructura organizada (recomendado) en donde tendremos nuestros sitios, es recomendable un estructura del tipo
- /var/www/<hostname>/html
Porque por ejemplo si nosotrotros tenemos un archivo en http://beziu.com/ejemplo.html este estará realmente en /var/www/beziu.com/html/ejemplo.html, entonces:
root@server:~# mkdir -p /var/www/beziu.com/html root@server:~# echo '¡Hola!
' > /var/www/beziu.com/html/index.html
De esta forma nuestro sitio ahora estará listo, ahora cómo sabrá lighttpd cuál es nuestro sitio o qué mostrar? pues esa es tarea de mod_simple_vhost que se encargará de ello por nosotros (solo hay que colocar el nombre de la carpeta como dominio), eso sí primero hay que habilitarlo:
root@server:~# lighttpd-enable-mod simple-vhost Available modules: auth cgi fastcgi proxy rrdtool simple-vhost ssi ssl status userdir Already enabled modules: Enabling simple-vhost: ok Run /etc/init.d/lighttpd force-reload to enable changes root@server:~# /etc/init.d/lighttpd force-reload Stopping web server: lighttpd. Starting web server: lighttpd.
Ahora podrás navegar por beziu.com y te mostrará el mensaje que recién escribimos (recuerda tener bien configurado el dominio, con un registro A a la ip de tu equipo)
Instalando php y Mysql
Llegó el momento de instalar Php y Mysql, en donde php estará en modo CGI/FastCGI.
root@server:~# apt-get install mysql-server php5-cgi php5-mysql Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: ... Creating config file /etc/php5/cgi/php.ini with new version Setting up php5-mysql (5.2.6.dfsg.1-1+lenny2) ... Setting up sgml-base (1.26) ... Setting up xml-core (0.12) ... Setting up mailx (1:20071201-3) ...
En el proceso probablemente te pedirá que configures mysqld, es solo colocar una contraseña al usuario de mysql. Ahora para que nos funcione php debemos de configurarlo haciendo lo siguiente:
root@server:~# cat > /etc/lighttpd/conf-enabled/10-cgi-php.conf
server.modules += ("mod_cgi")
cgi.assign = (".php" => "/usr/bin/php5-cgi")^D
root@server:~# /etc/init.d/lighttpd force-reload
Stopping web server: lighttpd.
Starting web server: lighttpd.
Ahora deberíamos ser capaces de poder hacer correr un archivo php
root@server:~# echo '' > /var/www/beziu.com/html/phpinfo.php
Y con esto ya tenemos funcionando un servidor en Debian6+mysql+lighttpd, aunque te recomiendo que si tienes un servidor con poca ram (como el que está corriendo este blog) optimices mysql de la siguiente manera (siempre puedes instalar mysql
root@server:~# cat > /etc/mysql/conf.d/lowendbox.cnf [mysqld] key_buffer = 16K max_allowed_packet = 1M table_cache = 4 sort_buffer_size = 64K read_buffer_size = 256K read_rnd_buffer_size = 256K net_buffer_length = 2K thread_stack = 64K skip-innodb
Bueno, si vas necesitando más ram solo es cosa de que vaya dando de baja procesos que no utilizas, puedes leer más al respecto en la página creadora de este tutorial en el siguiente link: aquí.
Con esta configuración el consumo de ram anda por los 50mb nada mal, aunque todavía se puede optimizar bastante más.
No Responses