Howto: Montando un Servidor web en Debian Lenny

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

Posted in General
21 comments on “Howto: Montando un Servidor web en Debian Lenny
  1. Novato says:

    th3r0rn te felicito…

  2. th3r0rn says:

    Muchas Gracias Novato!! :D

  3. joshua says:

    chido el tuto man =D

    gracias por el aporte =D

  4. soullost says:

    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.

  5. maty1206 says:

    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

  6. maty1206 says:

    @ 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

  7. Bucio says:

    ushh ushh ea ea :D buen tex

  8. Nicolas Verschueren says:

    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

  9. th3r0rn says:

    De nada Nicolas para eso estamos =)

  10. cynthia says:

    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

  11. Nicolas Verschueren says:

    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

  12. Brezhnev Castro says:

    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

  13. th3r0rn says:

    Mucgas gracias Brezhnev Castro :-)

  14. romeos says:

    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

  15. th3r0rn says:

    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

  16. romeos says:

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

  17. spardam4 says:

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

  18. widman says:

    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. marvin says:

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

  20. Asdruval says:

    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 Pings/Trackbacks for "Howto: Montando un Servidor web en Debian Lenny"
  1. [...] [imgeek.net] ~$ Howto: Montando un Servidor web en Debian Lenny [...]

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>