Instalaremos un servidor web en Debian Lenny utilizando como tecnologias php5, cherokee, mysql, phpmyadmin. 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.
1 Instalando aplicaciones
| 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:
| nano /etc/php5/cgi/php.ini |
buscamos la lineas siguientes:
| ; 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:
| 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.
| mysqladmin -u root password mi_pass |
Ya con esto tendremos asignada una contraseña a mysql ahora vamos a probar conectarnos, ejecutamos:
seguido de esto nos pedira nuestro password que acabamos de definir, lo ingresamos y damos enter, ejemplo:
| 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:
Ejemplo:
| 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.
3 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:
| 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:
| /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:
|
$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
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:
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:
- Entonces todo salio a la perfeccion, y ya estamos conectados a nuestra base de datos, si nos da el mensaje :
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
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
despues enlistamos todo lo que hay en ese directorio con el comando
Observaremos algo asi:
| 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:
y como podemos observar la ruta del 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:
| ln -s /usr/share/phpmyadmin /home/th3r0rn/server/phpmyadmin |
Bien, despues de esto solo fuy a http://localhost/phpmyadmin y Bualaaaa!!!
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.