Actualización: Existe una versión más nueva de este tutorial para Fedora 12 lo pueden encontrar aquí:
Como instalar un Servidor LAMP en Fedora 12 paso a paso
Un servidor LAMP se refiere a la mezcla de Linux+Apache+Mysql+PHP en este caso les voy a mostrar como configurar un servidor con los siguientes componentes:
Nota: esta instalación es realizada para Fedora Core 7 (funciona también para Core 6 y Core 8 ) la instalación para Debian y Ubuntu la puedes encontrar aquí.
Voy a suponer que para hacer esta instalación tienes privilegios de root, así que una vez que entramos como root lo primero que debemos hacer es actualizar los paquetes necesarios en Fedora con el siguiente comando:
yum -y update && reboot
Como ya muchos saben yum (Yellow Update Manager) es el manejador de paquetes por excelencia de Fedora, este comando actualiza todos los paquetes que tengan actualizaciones en tu sistema, la opción -y hace que todas las preguntas que sean hechas con respecto a descargas y actualizaciones sean si automáticamente sin que tengamos que intervenir (claro esto es opcional depende de cada quien pero es más facil porque podemos dejar desantendida la actualización), el comando reboot lo que hace es que reinicia el sistema después que termine de actualizar.
Verás una lista de los paquetes que tienen una actualización disponible y cuanto es el tamaño total de la actualización, si colocaste la opción -y empezará inmediatamente a descargar los paquetes sino te preguntará si estas deacuerdo. Esto tardará un poco dependiendo de la cantidad de paquetes que tengas por actualizar.
Una vez que se actualice el sistema y se renicie ya estamos listo para comenzar con nuestra instalación.
Nota: esta instalación se hará con los repositorios por defectos que vienen con Fedora Core 7 por lo que no se debería necesitar instalar ningún repositorio extra.
Apache es el servidor web más utilizado en el mundo. Puede correr en varias plataformas tales como Unix, Linux, Microsoft Windows, Novell, etc. Es open source, estable, modular y muy configurable.
Para instalarlo utilizamos el siguiente comando:
yum install httpd
Esto instala la versión de Apache2. Si quisieras instalar la versión 1.3 de Apache en cambio de colocar httpd colocamos apache, sin embargo esta instalación se basará que has instalado la versión 2 de Apache.
Para iniciar el servidor de Apache ejecutamos
service httpd start
La otra decisión que tenemos que tomar es si vamos a utilizar php4 o php5, la principal diferencia entre estos dos es que php5 es orientado a objetos y php4 no, casí todas las aplicaciones web soportan php5, aunque hay algunas que todavía no, si estas desarrollando nuevas aplicaciones te recomiendo que de una vez pases a php5 y aprendas a programar orientado a objetos, pero a la final eso es a gusto de cada quien.
Para instalar PHP 5 ejecutamos:
yum install php php gd
Esto instalará la última versión de php y la librería de graficos gd que siempre es útil.
Para instalar PHP 4 en Fedora es un poco complicado ya que hasta donde yo se no existe en algun repositorio para instalarlo directamente con yum, si alguien sabe por favor hágamelo saber para colocarlo aquí.
Aquí podrás encontrar un tutorial de cómo instalar php4 en Fedora Core 6 http://www.mjmwired.net/resources/mjm-fedora-php4.html yo no lo he probado para el Core 7 aunque creo que debería funcionar si alguien lo hace y le funciona hágamelo saber.
Los archivos de configuración de apache están ubicados en: /etc/httpd/conf/httpd.conf y la carpeta web por defecto esta en /var/www/html/
Antes de comprobar que el servidor está funcionando correctamente ejecutamos:
service httpd restart
para que los cambios hagan efecto.
Luego en nuestro navegador web escribimos http://localhost/ y aparecerá una pagína parecida a esta:Si quieres ver si PHP se instaló correctamente hay un comando de php que te dá toda la información necesaria para esto tenemos que crear un archivo:
nano /var/www/html/test.php
Dentro del archivo escribe <?php phpinfo(); ?> y guardalo
Luego abre tu navegador web y escribe la dirección http://localhost/test.php debería aparecer una pantalla parecida a esta:
Instalar un servidor de base de datos es siempre necesario si estas corriendo casi cualquier sitio interectivo con PHP o algún otro lenguaje como JSP. Recuerda que para correr este tipo de servidores es necesario que al menos tengas 256MB de RAM. El siguiente comando instalará el servidor MYSQL5 que es la última versión al momento de escribir este tutorial y la librería de php para trabajar con mysql.
yum install mysql-server php-mysql
Para iniciar el servidor de mysql ejecutamos:
service mysqld start
El archivo de configuración de mysql se encuentra en : /etc/my.cnf
Para iniciar tanto Apache como MySQL cada vez que inicie nuestra PC necesitamos configurarlos como servicios para esto ejecutamos los siguientes comandos:
chkconfig --level 345 httpd on
chkconfig --level 345 mysqld on
Esto hace que tanto Apache como MySQL corran como servicios en los niveles 345 (tanto con o sin interfaz gráfica) cada vez que se inicia la PC.
Por defecto mysql crea un usuario como root sin ningún password, por lo que es bueno crear un password para este usuario:
Para hacer esto coloca los siguientes comandos:
mysql -u root
mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD('nuevo-password') WHERE user='root';
mysql> FLUSH PRIVILEGES;
Nunca se debe usar el usuario de root para accesar a la base de datos ya que tiene todos los privilegios sobre todas las bases de datos y por lo tanto es muy inseguro. Por esto es aconsejable crear un usuario para cada base de datos que crees, es un poco dificil crear usuarios desde la consola por lo que es más rapido y más intuitivo crealo desde un panel de control como webmin o phpMyAdmin los cuales instalaremos a continuación.
PhpMyAdmin es un software de administración basado en web que es fácil de configurar y además gratis. Es muy facil de utilizar y además permite realizar casi todas las tareas necesarias sobre las bases de datos de mysql.
Para instalarlo se ejecuta en la consola (noten las minúsculas y mayúsculas son importantes en el nombre):
yum install phpMyAdmin
Vamos ahora a modificar el archivo de configuración de phpMyAdmin:
gedit /etc/phpMyAdmin/config.inc.php
Buscamos las líneas donde dice:
$cfg['Servers'][$i]['auth_type']='' $cfg['Servers'][$i]['user']= '';$cfg['Servers'][$i]['password']= ''
Y cambiamos por
$cfg['Servers'][$i]['auth_type']='cookie' $cfg['Servers'][$i]['user']= 'root'; $cfg['Servers'][$i]['password']= 'clave_root_mysql'; // usa aquí tu clave que colocaste en MySQL para root
Y agregamos esta línea ya que si no nos da un error de blowfish:
$cfg['blowfish_secret']='una pregunta secreta' //esto es para poner una pregunta secreta o clave
Te recomiendo que en esta ultima linea pongas una clave bastante fuerte.
Y reiniciamos Apache:
service httpd restart
Ahora coloca en tu navegador: http://localhost/phpMyAdmin y te aparecerá una ventana parecida a esta:
Eso es todo, phpMyAdmin y MySQL ya están instalados. Para ingresar en phpMyAdmin coloca como login root con el password que deifinimos anteriormente. Para crear nuevos usuarios puedes hacerlo desde el link que dice Privilegios.
Espero que les haya servido de algo este tutorial, ahora ya tienes un servidor LAMP completo y puedes empezar a hacer tus propios sitios web.
Como siempre espero sus comentarios.
Otros artículos que te pueden interesar
![]()
Este trabajo está licenciado bajo Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 Unported License
Hola Olivers tengo un problema que cuando hago service httpd start me sale bash: service: command not found y eso que estoy como root. a que se debe.
Saludos
Hola wgvm, esto puede ser por varias razones, más arriba está un comentario de Rob que tenía el mismo problema que tú y escribió una solución prueba eso a ver si te funciona.
También puedes intentar ejecutar:
/etc/init.d/httpd start
A ver si sigues con el mismo problema
Si sigues con el problema vuelve a escribir y con gusto buscaremos otra solución
Saludos
Olivers
Muchas gracias… por personas como usted cada dia me siento mejor con este estupendo sistema operativo.
Llevo poco tiempo utilizandolo, pero la verdad es tan bueno que ya no extraño a windows para nada.
Saludos
Hola NovellLinux gracias por tu comentario.
Saludos
Olivers
Muchas gracias… me funcionó perfectamente en Fedora 10 x86_64.
Saludos!
cuando pongo service httpd start me sale que la direccion ip esta en uso pero en los otros servicios arranca normal
de Peru
Alfonso
Hola Alfonso, puedes copiar y pegar exactamente el error que te da aquí para poderte ayudar mejor.
Por lo que veo es muy probable que Apache ya esté corriendo o tengas algún otro servicio corriendo en el mismo puerto
Puedes probar con
service httpd restart
Saludos
Olivers
muy bien muchas gracias funciono con fedora 10
Gracias por tu comentarios poderoso.chri
Saludos
Olivers
hola olivers ,sabes que tengo el mismo error que que ELENA y todabia no puedo solucionar,necesito ayuda , de antemanos gracias
[mon Jan 12 23:03:46 2009] [crit] Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP.
Pre-configuration failed [Fail]
Hola RUBENS, dos post más abajo que el de Elena está mi respuesta a tu problema, espero que te sirva.
Cualquier cosa si quieres más detalles o tienes algún otro problema vuelve a escribir
Saludos
Olivers
hola soy nuevo en fedora9 y quisiera ver si me puedes hechar la mano tengo que configurar samba y crear dns privados en un servidor t105 dell 64bits la cuestion es que baje la version completa y en teoria ya viene instalada pero no puedo lograr ver las demas computadoras que tienen windows y viceversa
saludos
Hola Olivers: Primeramente agradecerte por el post q esta muy interesante y muy detallado. Quisiera hacerte una consulta pues estoy preparando un servidor http y tengo problemas para levantar el servicio he configurado todo lo necesario pero me doy con la sorpresa de q cuando hago Http://www.dominio.com sale error en cambio al hacer http://ip-del-servidor se muestra la pagina en cualquier maquina de mi red local. Podrias decirme como hago para q se muestre con el nombre. Gracias.
Atte: Bart
Hola Bart gracias por tus comentarios, recuerda que para poder ir a una dirección tipo http://www.dominio.com tu dominio tiene que estar registrado y además tienes que configurar unos servidores DNS que apunten hacia tu dominio, si solo lo quieres ver dentro de tu red interna puedes o modificar el archivo de configuración de /etc/hosts de cada una de tus computadoras y colocas ahí la IP y el nombre del dominio o configurar un servidor de DNS interno puedes ver un tutorial de DNS aquí:
http://www.vensign.com/general/instalar-configurar-un-servidor-dns-con-bind9-en-debian-etch/
Cualquier cosa vuelve a escribir
Saludos
Olivers
Gracias Olivers. lo q me dices de escribir el ip en archivo hosts de las pc’s con linux funciona correctamente. Te comento q estoy usando el fedora9 para implementar el servidor. En la oficina tambien hay pc’s con windows ¿como haria con ellos?. Ademas tambien comparto archivos desde èl y no quiero que lo hagan por su ip sino por el nombre del servidor.Aqui te escribo las lineas q he configurado de mi servidor DNS ya funcionando.
1. /etc/hosts
127.0.0.1 serverf9.serverf9.com serverf9 localhost.localdomain localhost serverf9
172.16.90.253 server.serverf9.com serverf9
172.16.90.253 http://www.serverf9.com
2./etc/named.conf
options {
listen-on port 53 { 127.0.0.1; 172.16.90.253; };
allow-query { localhost; 172.16.0.0/16; };
forwarders { 172.16.156.4; 172.16.156.5; };
}
zone “serverf9.com” IN {
type master;
file “serverf9.com.zone”;
allow-update {none; };
};
zone “90.16.172.in-addr.arpa” IN {
type master;
file “90.16.172.in-addr.arpa.zone”;
allow-update {none; };
3. /var/named/chroot/var/named/
archivo Serverf9.con.zone
————————-
$TTL 1D
@ IN SOA server.serverf9.com. root.serverf9.com. (
2 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS server.serverf9.com.
server IN A 172.16.90.253
www IN A 172.16.90.253
A 127.0.0.1
archivo 90.16.172.in-addr.arpa.zone
———————————–
$TTL 1D
@ IN SOA server.serverf9.com. root.serverf9.com. (
2 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ); minimum
IN NS server.serverf9.com.
253 IN PTR server.serverf9.com.
Espero q me heches una manito para liberar el nombre de mi servidor DNS para la red local.
Saludos
Bart.
Hola Bart si utilizas el archivo hosts no hace falta que tengas configurado un servidor DNS con el hosts basta, el Sistema Operativo revisa este archivo antes de hacer cualquier consulta hacia el exterior.
MS Windows tambien tiene su archivo hosts ubicado para XP, Vista, 2003 en:
%SystemRoot%\system32\drivers\etc\
Donde %SystemRoot% es simplemente una variable que indica la raiz donde se encuentra tu carpeta WINDOWS normalmente en C:\WINDOWS.
El formato es el mismo que para Linux.
Si quieres hacer una prueba rápida de que solo con este archivo es suficiente, para el servicio de DNS y prueba.
Ahora si son muchas maquinas puede ser tedioso cambiar el archivo hosts en cada una de ellas, en ese caso si usaria un servidor DNS interno de resto con este archivo es suficiente y recuerda que si cambia la IP del servidor lo tendrias que cambiar en cada una de los PCs por lo que puede ser algo tedioso.
Espero que te haya servido
Saludos
Olivers
Gracias Olivers por tu tiempo y el apoyo brindado.
Me ha servido mucho tus comentarios.
Saludos.
De nada Bart estamos a la orden para cualquier duda
Saludos
Olivers
Al arrancar Apache me da este aviso : Failed to enable APR_TCP_DEFER_ACCEPT.
Alguna idea, sugerencia y/o solucion se agradece.
Saludos y felicitaciones por la info que brindan.
Hola Yam esto significa que tu kernel no soporta alguno de los protocolos que Apache está tratando de habilitar, esto es solamente una Advertencia y Apache lo que hará es utilizar otro protocolo pero no te debería impedir que corra Apache.
Para remover este error agrega la linea:
AcceptFilter http none
en el archivo de httpd.conf. Para más información revisa http://httpd.apache.org/docs/2.2/mod/core.html#acceptfilter
Espero que te sirva
Saludos
Olivers
Se agradece la respuesta…
Efectivamente Apache va bien.
Justamente habia encontrado algo al respecto… voy a agregar esta instruccion. Ya lo comentare.
Saludos,
Yam
No va
Mi kernel ya un poquitin “viejito” es el
2.2.16-22smp.
Alguna pequenia guia para actualizarlo ?
Saludos,
yam
Vaya !
Only FreeBSD’s Accept Filters and Linux’s more primitive TCP_DEFER_ACCEPT are currently supported.
jejej y ahora ?
En httpd.conf : AcceptFilter http none sera en algun lugar especial ?
Saludos
Hola Yam, que versión de Fedora estás utilizando? Para ver si puedo ayudarte mejor.
Saludos
Olivers
Que tal Olivers…se agradece
Estoy con un RH v.6.x y toy parcha que parcha ;(
Pero, en fin me puedo mover con el http 2.2.11
y php v.5.2.8
Mi otro problem es mysql toy intentando ir hacia la v.5.1.30 pero no ‘apruebo’ con el make. El configure va ok pero ahi nomas.
jejej Y mi otro problema es el gcc quiero ir de la v.2.9.6 hacia la v.4.2.4 y me atasco.
Saludos,
yam
desde las Islas del Sol Naciente
Hola Yam primero el consejo obvio, instala un sistema más nuevo, RHEL 6 es un sistema bastante antiguo y trae muchisimos problemas a la hora de actualizar, ya no es soportado y por lo que veo quieres mantenerlo al día por lo que cada vez te costará más.
Dicho esto hay varios tutoriales de como actualizar esta versión pero es un proceso largo y difícil tienes que ir paso por paso actualizando Kernel, gcc, y otros paquetes hasta que tengas todas los requerimientos de MySQL 5, como te digo mi principal consejo es que te mudes a una distribución más moderna, no tiene porque ser RedHat puede ser CentOS o Fedora si quieres mantenerte bajo la misma línea o Debian y Ubuntu si quieres probar algo distinto, entre muchas de las distribuciones que hay las menciono porque son las más conocidas.
Quizas tengas razones muy validas por usar este sistema viejo pero tienes que hacer un balance entre lo practico y lo que sea que te mantiene atado al sistema.
Espero que nos digas que decidiste hacer ya que es bueno compartir las experiencias
Saludos
Olivers
Si ya estaba pensando en eso…
Creo q no me queda mas remedio que migrar…
Me urge poner en marcha este cacharro, asi que acepto cualquier sugerencia… preferible en la linea de RH.
Saludos
Yam
Hooooooooooola!
Parece q no hay nadie en casa ????!!!!
Bueno, actualize de la RH6 hacia la RH9 y aparentemente todo bien. Toy pensando migrar de la RH9 hacia Fedora 10.
Ya les contare…
Saludos
Que les parece…
tener lo último en tecnologías, Fedora sacrificó (siempre lo ha hecho) la estabilidad y compatibilidad con la mayor cantidad de hardware. A diferencia de Ubuntu 8.04, donde todo, o casi todo, funcionó al 100% desde el primer día de lanzamiento, Fedora tuvo un período de más de 1 mes donde muchas cosas estaban “rotas” (si no se atrevía uno a usar versiones en desarrollo de varias aplicaciones).
Hola Yam en que te basas para decir eso tuviste algun problema con el Fedora 10?
Saludos
Olivers
Hola Olivers.
Lo comentaba por que lo lei en algun site (lamento no recordar en cual) y lo envie para opiniones… con el Fedora recien lo estoy tentando pero como viene de la familia del RH no creo que tenga complicaciones… aunque fc 10 no permite crear el floppy de install, voy por un memory usb.
Mi duda es si puedo hacer upgrade fc 10 al RH9, habra problemas ?
Saludos
Hola Yam, no creo que sea posible actualizar (por lo menos no de una manera sencilla) desde RH9 a Fedora 10, de hecho me parece bastante complicado.
Yo te aconsejo que lo mejor es que hagas un Backup de toda la información que sea importante para ti en el servidor e instales desde cero.
Si lo que quieres es un servidor solamente sin entorno gráfico te aconsejo que veas CentOS que viene también de la misma familia y es bastante robusto, creo que existe también una versión Server para Fedora 10 pero nunca la he utilizado.
Espero que compartas con nosotros tus experiencias
Saludos
Olivers
Hola Olivers,
Efectivamente, requiero sin entorno grafico.
Vere el centOS, y ya les contare.
La verdad es q tambien se me esta agotando el tiempo… y ahora estoy liado con RH9 y el mysql-5.1.30 (aqui parece q hay problemillas con perl5) asi q pienso bajar a la version mysql-5.0 y ver q pasa.
Sugerencias ??? desde ya se agradece.
Con httpd-2.2.11 y php-5.2.8 no problem.
Saludos,
hola Olivers,
Bueno, por fin pario mi ‘loquita’ jejej…
Mi LAMP consta de :
Red Hat 9 (fui desde el RH-6.2 hacia RH-9 de un tiron)
httpd-2.2.11
php-5.2.8
mysql-4.1.22 (aqui no se xq no pude instalar una version mayor 5+, ya averiguare luego)
phpMyAdmin-2.11.9.4 (xq es compatible con php4+ y mysql3+, la v.3+ no compatibiliza con mysql-4)
Terminado esto, voy hacia mi otra ‘loquita’ para instalar centOS… ya les contare…
Saludos
Hola mi pana salu2 desde Buenaventura Colombia
Tengo una pregunta estos pasos sirven para Fedora 10?
Hola Nelson, si debería funcionar en Fedora 10.
Cualquier duda o problema que tengas puedes escribir
Saludos
Olivers
Hola mi pana si me ha servido hasta ahora estoy en phpMyAdmin mi socio,..,pero tengo una pregunta como hago para instalar el servidor LAMP en un pc ke no tenga salida a Internet??? muchas gracias mi pana
salu2 desde Buenaventura Colombia
HEY TENGO UN ERROR CON PHPMYADMIN
CADA VEZ KE ME KIERO hacer LOG IN me dice ADEMAS DE NO PODERME AUTENTICAR NO SE PUDO CARGAR LA EXTENSION mcrypt, por favor revice su configuracion php
listo viejo liver era ke no habia configurado bien el archivo,..,te reitero un tuto mi pana para saber como se puede instalar todo esto sin rekerir red,..,
se cuida man y gracias creame ke no tengo como pagarle
Hola Nelson me supongo que sin salida a internet te refieres a que no tienes conexión. Para esto la opción más fácil es que busques los paquetes .rpm de cada una de las aplicaciones y después los instales en la PC desde la consola o con el gestor de instalación.
La otra opción es que con el CD de instalación de Fedora o la distribución que utilices si te bajaste el DVD completo o puedes hacerlo normalmente incluyen estos paquetes. Lo puedes instalar con el gestor de paquetes o a través de la consola solo asegúrate de incluir el CD o DVD dentro de tus repositorios.
Espero que te sirva cualquier cosa vuelve a escribir
Saludos
Olivers
ok man io tengo el DVD de Fedora 10, pero no entiendo eso de “incluir el CD o DVD dentro de tus repositorios.”
Hola man ya instale apache y mysql-client con rpm pero al tratrar de instalar mysql-server
me manda un error que dice: conflicto con el paquete mysql-libs-5.0.67-2.fc10.i386
Hola nelson, dime que versión de mysql estás tratando de instalar lo debe decir en el paquete rpm que te descargaste, para poder ayudarte mejor…
En cuanto al DVD es un poco complicado en Fedora (realmente no se porque lo hicieron tan complicado), puedes chequear un pequeño tutorial aqui:
http://jgabriel.wordpress.com/2008/05/27/el-dvd-de-fedora-9-como-fuente-de-software/
Es para Fedora 9 pero deberia funcionar para Fedora 10, pruebalo y dinos si te funcionó.
Saludos
Olivers
Gracias mi hermano, ahora estoy probando freebsd tu conoce un blog donde pueda estas actualizado? a parte de la pagina normal? muchas gracias
exitos!!!
Hola nelson, con FreeBSD no he tenido mucho contacto así que no te puedo recomendar ningún tutorial…
Si consigues alguno bueno avísanos
Saludos
Olivers
Hola, tengo fedora9, realice los pasos pero entro a localhost/phpMyAdmin y no lo encuentra, que podria ser? reviso la carpeta var/www/html y no me aparece la carpeta de archivos del phpmyadmin, realice todos los pasos y sin embargo no encuentra la pagina, muchas gracias por tu ayuda.
Ya revisa, lo hago localmente y funciona perfecto gracias, pero quisiera que pueda ingresar desde otro equipo, ingreso con la ruta del servidor/phpMyAdmin y me dice que no tengo permisos, como puedo hacer para poder habilitarlo para ingresar desde cualquier equipo que se conecte a internet?
Gracias ala, muy amable.
Ya pude arreglar el problema, esto se hace modificando el phpmyadmin.conf que se encuentra en la carpeta httpd/conf.d
modificarle los permisos de vista
allow all o en a un usuario en especifico
Hola juansiza, gracias por tu aporte
Saludos
Olivers
huyyy gracias man me sirvio mucho…y no tuve dificultades…
Saludos desde colombia