LAMP es la abreviatura de L entrada, A pache, M ySQL, P HP. Este tutorial muestra cómo puede instalar un servidor web Apache2 en un servidor Fedora 20 compatible con PHP5 (mod_php) y MySQL.
¡No emito ninguna garantía de que esto funcione para usted!
1 nota preliminar
En este tutorial utilizo el nombre de host server1.example.com con la dirección IP 192.168.0.100. Estas configuraciones pueden diferir para usted, por lo que debe reemplazarlas cuando corresponda.
2 Instalación de MySQL/MariaDB 5
Para instalar MySQL, hacemos esto:
yum install mysql mysql-server
Luego creamos los enlaces de inicio del sistema para MySQL (para que MySQL se inicie automáticamente cada vez que se inicia el sistema) e iniciamos el servidor MySQL:
systemctl enable mysqld.service
Nota:si recibe un error como este
Failed to issue method call: No such file or directory
Entonces usa
systemctl enable mariadb.service
Más iniciar el servicio de mysql
systemctl start mysqld.service
Ejecutar
mysql_secure_installation
para establecer una contraseña para el usuario root (¡de lo contrario, cualquiera puede acceder a su base de datos MySQL!):
[[email protected] ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found
NOTA: SE RECOMIENDA EJECUTAR TODAS LAS PARTES DE ESTE SCRIPT PARA TODOS MariaDB
¡SERVIDORES EN USO DE PRODUCCIÓN! ¡POR FAVOR, LEA CADA PASO CUIDADOSAMENTE!
Para poder iniciar sesión en MariaDB y asegurarlo, necesitaremos la contraseña actual
del usuario root. Si acaba de instalar MariaDB y
aún no ha establecido la contraseña raíz, la contraseña estará en blanco,
por lo que solo debe presionar Intro aquí.
Introducir contraseña actual para root (ingresar para ninguna):<-- ENTER
OK, contraseña utilizada con éxito, continuando...
Configurar la contraseña de root asegura que nadie pueda iniciar sesión en MariaDB
usuario root sin la autorización adecuada.
¿Establecer contraseña root? [Y/n] <-- ENTRAR
Nueva contraseña: <-- turootsqlpassword
Vuelve a introducir nueva contraseña: <-- turootsqlpassword
¡La contraseña se actualizó correctamente!
Recargando tablas de privilegios. .
... ¡Éxito!
De forma predeterminada, una instalación de MariaDB tiene un usuario anónimo, permitiendo que cualquiera
inicie sesión en MariaDB sin tener que tener una cuenta de usuario creado para
ellos. Esto solo está diseñado para realizar pruebas y para que la instalación
sea un poco más sencilla. Debe eliminarlos antes de pasar a un
entorno de producción.
¿Eliminar usuarios anónimos? [S/n] <-- ENTRAR
... ¡Éxito!
Normalmente, solo debería permitirse que el root se conecte desde 'localhost'. Esto
garantiza que nadie pueda adivinar la contraseña raíz de la red.
¿Deshabilitar el inicio de sesión raíz de forma remota? [S/n] <-- ENTRAR
... ¡Éxito!
De forma predeterminada, MariaDB viene con una base de datos llamada 'prueba' a la que cualquiera puede
acceder. Esto también está diseñado solo para pruebas y debe eliminarse
antes de pasar a un entorno de producción.
¿Eliminar la base de datos de prueba y acceder a ella? [S/n] <-- ENTRAR
- Eliminación de la base de datos de prueba...
... ¡Éxito!
- Eliminación de privilegios en la base de datos de prueba...
... Éxito !
Al volver a cargar las tablas de privilegios, se asegurará de que todos los cambios realizados hasta el momento
se apliquen de inmediato.
¿Recargar las tablas de privilegios ahora? [S/n] <-- ENTRAR
... ¡Éxito!
Limpiando...
¡Todo hecho! Si completó todos los pasos anteriores, su MariaDB
instalación ahora debería ser segura.
¡Gracias por usar MariaDB!
[[email protected] ~]#
3 Instalación de Apache2
Apache2 está disponible como paquete de Fedora, por lo que podemos instalarlo así:
yum install httpd
Ahora configure su sistema para iniciar Apache en el momento del arranque...
systemctl enable httpd.service
... e inicie Apache:
systemctl start httpd.service
Ahora dirija su navegador a http://192.168.0.100, y debería ver la página de marcador de posición de Apache2:
La raíz de documentos predeterminada de Apache es /var/www/html en Fedora, y el archivo de configuración es /etc/httpd/conf/httpd.conf. Las configuraciones adicionales se almacenan en el directorio /etc/httpd/conf.d/.
4 Instalación de PHP5
Podemos instalar PHP5 y el módulo Apache PHP5 de la siguiente manera:
yum install php
Debemos reiniciar Apache después:
systemctl restart httpd.service
5 Probar PHP5 / Obtener detalles sobre su instalación de PHP5
La raíz del documento del sitio web predeterminado es /var/www/html. Ahora crearemos un pequeño archivo PHP (info.php) en ese directorio y lo llamaremos en un navegador. El archivo mostrará muchos detalles útiles sobre nuestra instalación de PHP, como la versión de PHP instalada.
vi /var/www/html/info.php
<?php phpinfo(); ?> |
# phpMyAdmin - Web based MySQL browser written in php # # Allows only localhost by default # # But allowing phpMyAdmin to anyone other than localhost should be considered # dangerous unless properly secured by SSL Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin <Directory /usr/share/phpMyAdmin/> # <IfModule mod_authz_core.c> # # Apache 2.4 # <RequireAny> # Require ip 127.0.0.1 # Require ip ::1 # </RequireAny> # </IfModule> # <IfModule !mod_authz_core.c> # # Apache 2.2 # Order Deny,Allow # Deny from All # Allow from 127.0.0.1 # Allow from ::1 # </IfModule> Require all granted </Directory> <Directory /usr/share/phpMyAdmin/setup/> <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require ip 127.0.0.1 Require ip ::1 </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory> # These directories do not require access over HTTP - taken from the original # phpMyAdmin upstream tarball # <Directory /usr/share/phpMyAdmin/libraries/> Order Deny,Allow Deny from All Allow from None </Directory> <Directory /usr/share/phpMyAdmin/setup/lib/> Order Deny,Allow Deny from All Allow from None </Directory> <Directory /usr/share/phpMyAdmin/setup/frames/> Order Deny,Allow Deny from All Allow from None </Directory> # This configuration prevents mod_security at phpMyAdmin directories from # filtering SQL etc. This may break your mod_security implementation. # #<IfModule mod_security.c> # <Directory /usr/share/phpMyAdmin/> # SecRuleInheritance Off # </Directory> #</IfModule> |