- Imgeek C# Wireless Informatica y mucho mas ABAP SAP


Howto: Montando un Servidor web en Debian Lenny

Por | 19 de September de 2008 | 22 comentarios

Hola lectores y publico en general, el dia de hoy me dedique a instalar un servidor web en Debian Lenny utilizando como tecnologias php5, cherokee, mysql, phpmyadmin Ha pesar de los dolores de cabeza y desveladas que pase logre hacer funcionar Cherokee en conjunto con phpmyadmi. Para los que no saben que es Cherokee les comento que es un excelente Servidor web como apache y la verdad lo prefeiero mas que apache ya que es muy facil de configurar ademas de que es bastante muy rapido, potete y seguro. Si necesitan mas informacion pueden entrar aqui.

Vamos a lo bueno!

Tutorial Web Server Debian Lenny + php + phpmyadmin + Mysql + Cherokee web server.

1 Instalando aplicaciones

1
aptitude install cherokee php5-cgi php5-mysql mysql-server-5.0

2 Configurando aplicaciones

  • Activando la funcion de mysql en php

Esta funcion se encuentra comentada por lo cual no es interpretada por php, para poder usar esta funcion es necesario quitarle el comentario ” ; ” para esto necesitamos editar el archivo de configuracion de php el cual es php.ini para ello lo abrimos con nuestro editor preferido, yo use nano, entonces lo hacemos como root:

1
 nano /etc/php5/cgi/php.ini

buscamos la lineas siguientes:

1
2
3
4
5
6
;   extension=msql.dll
;
; ... or under UNIX:
;
;  extension=msql.so
;

Muy bien, esto indica que para poder usar las funciones de mysql con php es necesario descomentarlas, tenemos que para windows es extension=msql.dll y para sistemas basados en unix es: extension=msql.so En este caso nuestro sistema esta basado en unix por lo cual tenemos que descomentar esta ultima, simplemente tenemos que quitarle el ” ; ” como mencione anteriormente, entonces nos tiene que quedar algo asi:

; extension=msql.dll
;
; … or under UNIX:
;
extension=msql.so

Para ser msa exactos la funcion que queremos descomentar se encuentra en la linea 610 para aquellos que editen el archivo con editores que muestren los id de lineas como el bluefish editor lo recomiendo ampliamente, si lo instalas y deseas editar el archivo con este editor es casi lo mismo:

1
bluefish /etc/php5/cgi/php.ini

ok ya que hemos editado el archivo solo guardamos y cerramos el archivo.

Configurando Mysql

Bien, tenemos que generar una contraseña para poder utilizar mysql por lo cual en una shell como root ejecutamos lo siguiente:
Ojo: en la ultima linea que dice “mi_pass” pondras tu contraseña que utilizaras para conectarte a mysql.

1
mysqladmin -u root password mi_pass

Ya con esto tendremos asignada una contraseña a mysql ahora vamos a probar conectarnos, ejecutamos:

1
mysql -u root -p

seguido de esto nos pedira nuestro password que acabamos de definir, lo ingresamos y damos enter, ejemplo:

1
2
3
4
5
debian:/# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 15
Server version: 5.0.51a-12 (Debian)

Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the buffer.

mysql>

  • Verificando las existencias base de datos

Ok, ahora en esa misma shell ya estamos conectados mysql vamos a ver las base de datos que existen en mysql, por lo cual ayi mismo solo tenemos que pedirle a mysql que nos muestre las base de datos existentes se lo pedimos tecleando ayi mismo:

1
show DATABASES;

Ejemplo:

1
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.

mysql> show DATABASES;
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
+——————–+
2 rows in set (0.20 sec)

mysql>

ok, tenemos que nos muestra que existen 2 base de datos las cuales son mysql y information_schema Bien, ahora simplemente tecleamos contro + c para salir
Configurando Cherokee web server
Bien esto es muy sencillo solo tenemos que crear un directorio donde vamos a tener los archivos publicos, es decir donde meteremos nuestras paginas webs o trabajos en php etc..
Vamos a nuestro directorio home y creamos una carpeta y le ponemos el nombre que nosotros queramos esto como usuario normal en mi caso yo cree una carpeta llamada server.
Una vez creada ejecutamos una shell y como root vamos a editar el archivo de configuracion de cherokee, el cual se encuentra en /etc/cherokee. Por lo cual ejecutamos como root:

1
 nano /etc/cherokee/cherokee.conf

Y buscamos la siguiente linea:

vserver!default!document_root = /var/www

Esta linea es la numero 25 del archivo, lo unico que vamos a cambiar es el directorio, es decir ingresaremos la direccion donde creamos la carpeta donde guardaremos los archivos entonces solo cambiamos :
/var/www por esto: /home/usuario/carpeta
donde usuario es el nombre de usuario de nuestra cuenta, y donde carpeta es la carpeta que hemos creado para guardar los archivos, en mi caso mi usuario es th3r0rn y mi carpeta se llama server como mencione anteriormente, entonces lo mio quedo asi:

vserver!default!document_root = /home/th3r0rn/server

Bien, cuando terminemos de editarlo solo guardamos los cambios (Control + O ) y cerramos el archivo (Contro + x )
Listo, ahora solo queda reiniciar Cherokee por lo cual como root ejecutamos en una shell:

1
/etc/init.d/cherokee restart

Despues de esto abrimos nuestro navegador y en la barra de direccion solo ponemos la palabra localhost y damos enter, si todo lo realizamos bien entonces nos mostrara un index donde dire algo asi como Index of / y mas abajo Cherokee web server Port 80 0.7.2 (Debian GNU/Linux)

Lo que indica que ya tenemos funcionando cherokee, por paso siguiente vamos a comprobar que php puede utilizar la funcion de mysql, entonces en un editor de texto ya sea nano, vim, bluefish etc.. y escribiremos un script, yo la verdad recomiendo nuevamente que para esto utilizen bluefish :P entonces en el editor ponemos el siguiente codigo:

1
2
3
4
5
6
7
<?
$conexion=mysql_connect("localhost","root","mi_pass")or//Ojo donde dice mi_pass es la contraseña que definimos para mysql
die("Error en la conexion a la base de datos");
mysql_select_db("mysql")or
die("Problemas en el selecct");
echo"Conexion establesida";
?>

Observemos que he dejado un comentario donde indico que donde dice mi_pass va el password que definimos a mysql anteriormente. Bien ahora solo guardamos el archivo en la carpeta que creamos apra poder tener nuestros archivos de pagina web y esas cosas, lo guardamos con extension

1
.php

en mi caso yo lo guarde como sql.php ahora bien regresamos a nuestro navegador y nuevamente escribimos la palabra localhost para accedera la carpeta publica desde el navegador o si ya lo tienen ayi simplemente refresacamos con F5, si todo sale bien nos mostrara ayi mismo en el index of en listandonos el nombre del archivo ejemplo:
sql.php
Como se puede apreciar en la imagen, el servidor nos enlista los archivos que se encuentran en la carpeta publica, en mi caso tenemos 2 archivos los cuales son merga.php y sql.php
ahora bien le damos clic al que dice sql.php para que se ejecute y si nos muestrael mensaje:

Conexion establesida

  • Entonces todo salio a la perfeccion, y ya estamos conectados a nuestra base de datos, si nos da el mensaje :

Error de conexion

Entonces seguramente no ingresamos bien los datos de login a mysql como podria ser la contraseña,

  • Si no encontramos los archivos a ejecutar en el list del servidor.

Entonces en la barra de navegacion ponemos:

http://localhost/sql.php Esto para llamar al archivo que se encuentra en la carpeta, si le pusiste un nombre diferente al archivo entonces seria otracosa.php

Si deseamos conocer ver la configuracion de php solo escribimos en un archivo el siguiente codigo

<?
phpinfo()
?>

y lo guardamos en la carpeta donde ejecutamos nuestras webs con el nombre que queramos pero con extencion .php ejemplo info.php despues lo ejecutamos desde el navegador y nos mostrara la configuracion.
INSTALASION DE PHPMYADMIN<— especial!!!

Si bien he puesto lo de phpmyadmin ya que era uno de mis principales objetivos, pero en un momento dado llegue a jamas poder terminarlo debido a la poca documentacion que hay sobre configuracion de phpmyadmin en cherokee. Bueno, me puse a trabajar y estube investigando ampliamente, en su momento dado elimine cherokee y me instale apache, despues configure apache con phpmyadmin y me jalo al pedo, si bien miramos los resultados en gooole de phpmyadmin en cherokee observaremos que no tenemos mucha suerte pero si ponemos phpmyadmin en apache obtendremos mucha ayuda, bien cuando logre poner el phpmyadmin en apache me puse a pensar y a analizar la situacion, (para esto ya me encontraba con dolor de espalda fatiga y ganas de ir a la cama pero mi deseo de luchar y de victoria me ayudaron) ok, entonces otra vez desinstale apache 2 y reinstale cherokee seguido de esto lo uni que que tenemos que hacer, es decir en el caso de ustedes no tienen que reinstalar nada de cherokee ni apache solo vamos a instalar phpmyadmin:

1
aptitude install phpmyadmin

NOTA: cuando este instalando phpmyadmin, se ejecutara en la shell una ventana azul que le pedira bajo que servidor configurar, en esa lista muestra algunos servidores como apache,apache2httpd etc… NO SELECCIONE NINGUNO Y SI ESTA SELECCIONADO ALGUNO PORFAVOR QUITELO YA QUE SERVIDOR QUE MANEJAREMOS ES CHEROKEE
Ahora bien vamos en mi intento desesperado por instalarlo me fuy a revisar el archivo de configuracion en /etc/phpmyadmin por lo cual ejecutamos

1
 cd /etc/phpmyadmin

despues enlistamos todo lo que hay en ese directorio con el comando

1
 ls

Observaremos algo asi:

1
2
3
debian:/etc/phpmyadmin# ls
apache.conf  config.footer.inc.php  config.header.inc.php  config.inc.php  htpasswd.setup  lighttpd.conf
debian:/etc/phpmyadmin#

Bien, como podemos encontrar hay varios archivos de configuracion entre ellos esta apche.conf dicho archivo se me fue muy raro que no existiera ninguno llamado cherokee.conf por lo cual me fuy arevisar la estructura de ese fichero:

1
nano apache.conf

y como podemos observar la ruta del phpmyadmin:
Phpmyadmin
Entonces fuy a esa ruta y revise el index.php de phpmyadmin y en efecto era esa la ruta necesario, por lo cual solo cree un enlace simbolico:
ejecutamos:

1
ln -s /usr/share/phpmyadmin /home/th3r0rn/server/phpmyadmin

Bien, despues de esto solo fuy a http://localhost/phpmyadmin y Bualaaaa!!!
phpmyadmin
Listo con esto ya tengo listo mi servidor web con todo lo que necesito para mis scripts :$ solo en nombre de usuario ponemos root y en password la contraseña que le dimos a mysql y ya esta.
La verdad creo que valio la pena la desbelada ya que me senti bien conmigo mismo cuando lo logre u_u incluso mi primera reaccion fue deslisarme poner ambas manos detras de la cabeza y deslisarme con mi silla asia atras desplegando una ligera sonrisa y decir “Lo he logrado”. y pues por siguiente solo fue ponerme a terminar de escribir este tutorial, ya que lo empeze en la mañana y lo termine a media noche ya que todo el dia fue puro luchar por obtener el funcionamiento de phpmyadmin con el servidor web cherokee
Creo que ahora ya solo queda mas que despedirme de ustedes y esperar que esta informacion sea de mucha utilidad para mucha gente ya que a mi me costo bastante elaborar esta documentacion a si como lograr obtener los resultados de este proceso elaborado.
Como informacion adicinal nunca esta de mas conocer la estructura de directorios Unix ya que esto es de mucha gran ayuda a la hora de configurar todos estos ficheros.
Esto es todo Discupen los errores ortograficos y de redaccion.

Nota: pueden consultar el siguiente tutorial que es mas reciente y lo elabore esta  semana, hay algunas cosas que cambian cuando instalas phpmyadmin como cuando te pide q seleciones el modulo a configurar con httpd:

http://foros.hackerss.com/t9574/montando-un-servidor-web-en-debian-lenny


Deja un comentario :)

22 opiniones

Comparte tu opinión

19 de September de 2008
a las 5:40 pm

Novato:

th3r0rn te felicito…

19 de September de 2008
a las 9:09 pm

th3r0rn:

Muchas Gracias Novato!! :D

19 de September de 2008
a las 9:37 pm

c0dex:

buen texto :P

19 de September de 2008
a las 11:05 pm

joshua:

chido el tuto man =D

gracias por el aporte =D

20 de September de 2008
a las 3:04 am

soullost:

No th3r0rn, el no poder correr el phpmyadmin no era porque había poca documentación, si no, porque moviste la carpeta por default de cherokee de una forma bastante rara. Esta bien para tu uso personal, pero para un servidor, esa configuración no tiene mucha lógica XD (¿Cherokee no dispone de directorios de usuarios?).

A mi se me hace muy sencillos instalar LAMP en gentoo :), sobre todo la forma en que maneja los módulos por medio de /etc/conf.d/apache2.

20 de September de 2008
a las 3:29 am

maty1206:

Que te digo maestro, me encantó este post.

Te felicito, y sé lo que sentiste, porque a mi me llevo varias semanas descifrar el comando que permite cambiar el tema que viene por defecto de E17 en Arch Linux, para cuando se remasteriza un livecd.

# su enlightenment_remote enlightenment_remote -theme -set theme theme.edj -restart && su aptitude update -initramfs -u

Un abrazo

20 de September de 2008
a las 3:39 am

maty1206:

@ soullost

Si te refieres a las carpetas /var/www , entonces si estás en lo correcto.

En realidad Cherokee como cualquier otro servidor web (Apache, Lighttpd, etc…) toman el directorio /var/www por defecto.

El problema radica en que para editar o modificar /var/www se necesita tener permisos de root.

ES fácil de solucionar con un
# chown -R usuario /var/www

Un abrazo

20 de September de 2008
a las 2:27 pm

Bucio:

ushh ushh ea ea :D buen tex

12 de October de 2008
a las 10:03 pm

Nicolas Verschueren:

Haz sido de mucho ayuda, todo a funcionado sin ningun problema, sin embargo al hacer la instalación de mysql como tu sugeres:
aptitude install mysql-server-5.0
debian lenny, tiene un problema con mysql algo de que no existe un .sock, esto lo he podido arreglar instalando
aptitude install mysql-client mysql-server
todo el resto ha andado impecable, muchas gracias

13 de October de 2008
a las 4:42 pm

th3r0rn:

De nada Nicolas para eso estamos =)

27 de October de 2008
a las 9:20 pm

cynthia:

me gusto la informacion pero me gustaria saber como se llama por default el servidor de mysql cuando instalamos el appserver y el phpmyadmin please me urge un poco la informacion

gracias

5 de January de 2009
a las 4:17 pm

Nicolas Verschueren:

Muy buen articulo, lo he seguido un par de veces cuando he instalado mi sistema operativo y recién en la distribución de lenny de noviembre me ha funcionado todo sin problemas. Gracias a este articulo decidí cambiar de apache a cherokee y me ha gustado mucho
Mis Felicitaciones

11 de February de 2009
a las 4:14 am

Brezhnev Castro:

Excelente tutorial, te felicito por tu esfuerzo, yo también he tenido esa clase de problemas, pero gracias al esfuerzo tuyo se pueden lograr muchas cosas…si todos fueramos así….EXCELENTE TUTORIAL

11 de February de 2009
a las 2:57 pm

th3r0rn:

Mucgas gracias Brezhnev Castro :-)

12 de February de 2009
a las 12:52 am

romeos:

hola , amigo. una duda al momento de instalar phpmyadmin tambien se instala por defecto el server apache2 , lo vi en el menu Sistema …Servicios esta junto cherokee pero si lo quito me da error el phpmyadmin : ( y si pongo un archivo limpio index.html me dice el Index of apache 2 runing. bueno eso es todo y me quedare con los dos activos por el momento ….. gracias

12 de February de 2009
a las 2:05 am

th3r0rn:

Hola, seguramente cuando instalaste phpmyadmin en la shell te abrio una ventana que te decia para que servidor configurarlo, en esa lista te nmuestra una lista de servidores como apache, apache2 httpd etcc… en ninguna aparece cherokee, recuerdo que una esta marcada por default, he ayi el problema, deseleccionalo para que no te conmfigure o instale algun modulo, mira, puse recien actualize el tutorial, cree uno para hackerss.com, apenas esta semana, puedes consultarlo:
http://foros.hackerss.com/t9574/montando-un-servidor-web-en-debian-lenny
saludos

13 de February de 2009
a las 3:48 am

romeos:

gracias amigo, voy a reinstalarlo todo y hacerlo de cero jejeje, estoy aprendiendo de esto nijijijj :)

13 de February de 2009
a las 11:03 pm

spardam4:

Buenisimo post, me ha servido mucho, todo va bien ;)

14 de August de 2009
a las 3:53 pm

widman:

hola .en estos dias me asignaron instalar debian 0.5 en un servidor proxy, que me recomiendan,para tener una buena configuracion del servidor?y dominio?y q aplicacines buenas de seguridad?cualquier opinion me sirve

19 de March de 2010
a las 10:13 pm

marvin:

Gracias y sigue a delante….. con los tutoriales…. son un bien para la comunidad…

20 de March de 2010
a las 11:51 am

Asdruval:

Saludos.Instalé de auerdo al tuto…Pero sicede que cuando http://localhost/phpmyadmin/ no me da la ventana de trabajo es decir la de inicio.Gracias por tu ayuda.


1 trackback
  1. Servidor web ligero (Cherokee vs Lighttpd) « enramos

Comparte tu opinión

Los campos marcados con * son obligatorios



Sobre nosotros

Diseño basado en MilBits