Subido por sergiobarr

▷ Cómo Instalar LAMP en Debian 9 - [2019] PASO A PASO

Anuncio
Chacho Cool net (https://chachocool.com/)
Inicio (https://chachocool.com)
Contacto (https://chachocool.com/contacto/)

Cómo Instalar LAMP en Debian 9
 (https://chachocool.com) > Linux (https://chachocool.com/linux/) > Cómo Instalar LAMP en Debian 9 (https://chachocool.com/com
Buscar
ENTRADAS RELEVANTES
Conseguir certificados SSL
GRATIS en Debian 9
(https://chachocool.com/com
o-conseguir-certificados-sslgratis-en-debian-9/)
¡¡DOMINIOS A 0,88 $!!
Cómo Instalar LAMP en Debian
9
 chachocool (https://chachocool.com/author/chachocool/) -  1 enero, 2019  Linux (https://chachocool.com/linux/)  Sin comentarios (https://chachocool.com/como-instalar-lamp-en-debian-9/#respond)
En este tutorial vamos a aprender cómo instalar LAMP en Debian 9 ó, para ser más
exactos, cómo crear un servidor con Linux, Apache, MariaDB y PHP para tener la
base sobre la que instalar aplicaciones web o alojar sitios gracias a CMS como
WordPress. Como versión de Linux ya habrás notado que vamos a usar la última
versión de Debian.
Partiendo de una nueva instalación básica de Debian 9 si tienes tiempo puedes
revisar entradas anteriores para llegar a este resultado:
Instalar Apache en Debian (https://chachocool.com/como-instalar-apache-endebian-9-stretch/)
Instalar PHP en Debian (https://chachocool.com/como-instalar-php-en-debian-9/)
Instalar MariaDB en Debian (https://chachocool.com/como-instalar-mariadb-endebian-9-stretch/) o instalar MySQL en Debian (https://chachocool.com/comoinstalar-mysql-en-debian/)
Pero si tienes algo de prisa, en esta entrada tienes la receta completa y resumida.
(https://namecheap.pxf.io/c/129
2364/386447/5618)
Tabla de contenidos [ocultar]
Cómo instalar LAMP en Debian 9
Cómo Instalar Apache, MariaDB y PHP en Debian 9
Estado de los servicios tras la instalación
Cómo configurar LAMP en Debian 9
rápida
de PHP
Este sitio Configuración
web utiliza cookies
para que
usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
las mencionadas cookies y la aceptación de nuestra política de cookies (https://chachocool.com/politica-de-cookies/), pinche el enlace para mayor información
Configurar rápidamente MariaDB
Cómo comprobar el servidor LAMP Debian
ACEPTAR
Conclusión
Para seguir los pasos de este tutorial necesitarás un sistema Debian 9 y un usuario
con permisos de root o sudo.
Cómo instalar LAMP en Debian 9
Para una instalación sencilla y rápida usaremos los paquetes presentes en los
repositorios oficiales de Debian, por lo que el software que instalaremos será
Apache, PHP y MariaDB. Si prefirieras MySQL en lugar de MariaDB se necesitan
repositorios adicionales, todo lo tienes explicado en la entrada sobre la instalación
de MySQL en Debian (https://chachocool.com/como-instalar-mysql-en-debian/).
Cómo Instalar Apache, MariaDB y PHP en Debian 9
Los paquetes que necesitaremos para la instalación son apache2, mariadb-server,
php y php_mysql. Realmente podríamos instalar sólo mariadb-server y php, ya que
apache2 es una dependencia de php, es decir, que se instala automáticamente si no
está presente.
Empezaremos actualizando el sistema:
~$ sudo apt update && apt -y upgrade
Y ya podemos instalar todos los paquetes:
~$ sudo apt install apache2 mariadb-server php phpmysql
Estado de los servicios tras la instalación
Una vez descargados, desempaquetados e instalados los paquetes y sus
dependencias podemos comprobar en qué estado se encuentran los servicios.
Veremos que tanto el servicio de Apache como el de MariaDB están iniciados
mediante el comando systemctl:
~$ systemctl status apache2 mariadb
● apache2.service - The Apache HTTP Server
Loaded: loaded
(/lib/systemd/system/apache2.service; enabled;
vendor preset: enabled)
Active: active (running) since Tue 2018-12-04
21:34:36 CET; 2h 14min ago
Process: 9713 ExecReload=/usr/sbin/apachectl
graceful (code=exited, status=0/SUCCESS)
Main PID: 8764 (apache2)
Tasks: 7 (limit: 4915)
CGroup: /system.slice/apache2.service
├─8764 /usr/sbin/apache2 -k start
├─9718 /usr/sbin/apache2 -k start
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
-k start
las mencionadas cookies y├─9719
la aceptación/usr/sbin/apache2
de nuestra política de cookies (https://chachocool.com/politica-de-cookies/),
pinche el enlace para mayor información
├─9720 /usr/sbin/apache2 -k
start
ACEPTAR
├─9721 /usr/sbin/apache2 -k start
├─9722 /usr/sbin/apache2 -k start
└─9723 /usr/sbin/apache2 -k start
● mariadb.service - MariaDB 10.1.37 database server
Loaded: loaded
(/lib/systemd/system/mariadb.service; enabled;
vendor preset: enabled)
Active: active (running) since Tue 2018-12-04
21:34:08 CET; 2h 14min ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 7889 (mysqld)
Status: "Taking your SQL requests now..."
Tasks: 27 (limit: 4915)
CGroup: /system.slice/mariadb.service
└─7889 /usr/sbin/mysqld
Курс Основы верстки
Онлайн-обучение вёрстке HTML + CSS с
нуля. Личный наставник. Оставьте заявку!
Anuncio
Loftschool
Подробнее
Ambos servicios no sólo están funcionando, sino que están activados para inciar con
el sistema, cada vez que este sea reiniciado.
Cómo configurar LAMP en Debian 9
Con los servicios con la configuración por defecto, es necesario realizar algunos
pequeños ajustes. En realidad es poca cosa, en unos instantes lo tendremos todo
listo.
Configuración rápida de PHP
Para ajustar la configuración por defecto de PHP para Apache, debemos editar el
archivo /etc/php/7.0/apache2/php.ini. Algo que es muy recomendable es ajustar la
zona horaria del servidor, a través de la cláusula date.timezone del archivo de
configuración. Por defecto no viene configurada ninguna zona:
[...]
[Date]
[...]
;date.timezone =
[...]
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
las mencionadas cookies y la aceptación de nuestra política de cookies (https://chachocool.com/politica-de-cookies/), pinche el enlace para mayor información
En este ejemplo configuraremos la zona horaria de EspañaACEPTAR
peninsular:
date.timezone = Europe/Madrid
Los valores para cualquier zona horaria que necesites los puedes encontrar en
http://php.net/manual/es/timezones.php (http://php.net/manual/es/timezones.php).
Información sobre errores
La configuración por defecto de PHP en cuanto a información de errores del código
de las aplicaciones web está orientada a entornos de producción. Esto significa que
cuando PHP encuentra un error en una aplicación la detiene sin informar en el
navegador sobre qué está ocurriendo. Un comportamiento así es el adecuado para
un servidor de producción, pero para un servidor de desarrollo preferiremos que
PHP nos ayude a depurar los errores con mensajes de error.
Sólo si el servidor LAMP que estás preparando es para pruebas o desarrollo y
quieres obtener los posibles mensajes de error en el navegador, buscaremos las
siguientes cláusulas en /etc/php/7.0/apache2/php.ini y cambiaremos sus valores por
los que te muestro en este ejemplo:
[...]
error_reporting = E_ALL
[...]
display_errors = On
[...]
display_startup_errors = On
[...]
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
las mencionadas cookies y la aceptación de nuestra política de cookies (https://chachocool.com/politica-de-cookies/), pinche el enlace para mayor información
ACEPTAR
Después de hacer cualquier cambio en la configuración de PHP hay que recargar la
configuración de Apache manualmente:
~$ sudo systemctl reload apache2
Comprobación rápida del funcionamiento de PHP
Si a estas alturas no puedes esperar a ver si PHP y Apache están correctamente
integrados, lo comprobaremos con un pequeño script de PHP, que guardaremos,
por ejemplo, en /var/www/html/info.php:
<?php
phpinfo();
Como la raíz de documentos web de Apache se encuentra por defecto en
/var/www/html/ este archivo info.php será accesible desde direcciones como
http://localhost/info.php, http://127.0.0.1/info.php o desde el exterior del servidor
mediante su dirección IP o nombre de dominio cualificado (si lo tiene) añadiendo
/info.php:
Servidor web Apache con PHP funcionando correctamente
Configurar rápidamente MariaDB
La configuración por defecto de MariaDB viene sin usuarios anónimos y sin bases de
datos de pruebas, pero el usuario root no tiene contraseña, por lo que es importante
asignarle una. El problema es que el usuario root viene configurado con el plugin de
autenticación unix_socket, por lo que mientras no lo desactivemos no conseguiremos
que MariaDB solicite la contraseña o la tenga en cuenta.
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
En primer lugar
desactivaremos
plugin
unix_socket
para
el usuario root.
las mencionadas
cookies
y la aceptación deel
nuestra
política
de cookies
(https://chachocool.com/politica-de-cookies/),
pinche el enlace para mayor información
Conectaremos al servicio MariaDB con el cliente mysql:
ACEPTAR
How to fix bunions without surgery with
this fashionable sandals. Watch how it…
How to fix bunions without surgery with this
fashionable sandals. Watch how it works.
Anuncio
5econds
Shop Now
~$ sudo mysql
Welcome to the MariaDB monitor. Commands end with ;
or \g.
Your MariaDB connection id is 3
Server version: 10.1.37-MariaDB-0+deb9u1 Debian 9.6
Copyright (c) 2000, 2018, Oracle, MariaDB
Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear
the current input statement.
> use mysql;
Reading table information for completion of table
and column names
You can turn off this feature to get a quicker
startup with -A
Database changed
> update user set plugin = '' where User='root';
Query OK, 1 row affected (0.07 sec)
Rows matched: 1 Changed: 1 Warnings: 0
> set password for 'root'@'localhost' =
password('rootpassword');
Query OK, 0 rows affected, 1 warning (0.00 sec)
> flush privileges;
Query OK, 0 rows affected (0.01 sec)
> exit
Bye
~$
ADIB™ Personal Finance - Finance
Solutions For Everyone
Instant Processing, First Instalment
Payment Grace Period Up To 90 Days.
Anuncio
adib.ae
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
las mencionadas cookies y la aceptación de nuestra política de cookies (https://chachocool.com/politica-de-cookies/), pinche el enlace para mayor información
Learn more
ACEPTAR
Hemos accedido como root sin contraseña, hemos desactivado el plugin unix_socket
y hemos asignado una contraseña para root. A partir de este momento no es posible
acceder como root si no se especifica la contraseña:
~$ mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ;
or \g.
Your MariaDB connection id is 33
Server version: 10.1.37-MariaDB-0+deb9u1 Debian 9.6
Copyright (c) 2000, 2018, Oracle, MariaDB
Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear
the current input statement.
MariaDB [(none)]>
Solucionado este posible problema con la seguridad, continuamos.
Para comprobar que PHP puede trabajar con bases de datos MariaDB, vamos a crear
una base y un usuario de pruebas en MariaDB que posteriormente emplearemos en
un pequeño script PHP. Conectamos a MariaDB Server con el cliente de consola
mysql y creamos la base, el usuario y los permisos de este sobre la base:
> create database pruebas;
Query OK, 1 row affected (0.01 sec)
> create user usuario@localhost identified by
'1234';
Query OK, 0 rows affected (0.01 sec)
> grant all privileges on pruebas.* to
usuario@localhost;
Query OK, 0 rows affected (0.00 sec)
> flush privileges;
Query OK, 0 rows affected (0.01 sec)
> exit
Bye
~$
Ya tenemos todo configurado y listo para probarlo.
Cómo comprobar el servidor LAMP Debian
Para comprobar que todos los elementos de nuestro servidor LAMP Debian
encajan unos con otros, escribiremos un pequeño archivo PHP para testear el
funcionamiento. Lo podemos crear en una ruta fácilmente accesible desde el
navegador, como /var/www/html/test.php, con el siguiente contenido:
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
las mencionadas cookies y la aceptación de nuestra política de cookies (https://chachocool.com/politica-de-cookies/), pinche el enlace para mayor información
<?php
ACEPTAR
$enlace = mysqli_connect("127.0.0.1", "usuario",
"1234", "pruebas");
if (!$enlace) {
echo "Error: No se pudo conectar a MySQL." .
PHP_EOL;
echo "errno de depuración: " .
mysqli_connect_errno() . PHP_EOL;
echo "error de depuración: " .
mysqli_connect_error() . PHP_EOL;
exit;
}
echo "<h1>Éxito: ¡Se realizó una conexión apropiada
a MySQL!</h1>" . PHP_EOL;
echo "<h2>Información del host: " .
mysqli_get_host_info($enlace) . "</h2>" . PHP_EOL;
mysqli_close($enlace);
ADIB™ Be moneysmart
Open your smartaccount today and
Increase your chances of winning T&Cs apply
Anuncio
ADIB™
Learn more
Hemos empleado los datos de conexión del ejemplo anterior. Si has creado una
base y un usuario distintos, cámbialos en el script PHP.
Al introducir la URL correspondiente en el navegador veremos algo como esto:
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
las mencionadas cookies y la aceptación de nuestra política de cookies (https://chachocool.com/politica-de-cookies/), pinche el enlace para mayor información
ACEPTAR
Comprobación del funcionamiento del nuevo servidor LAMP en Debian 9
Y si obtenemos esta pantalla en lugar de un mensaje de error, es que todo ha
funcionado como esperábamos. Ya estamos listos para empezar a desarrollar
nuestras aplicaciones web o a instalar un CMS como WordPress, por ejemplo.
Conclusión
Ahora que ya sabes cómo instalar LAMP en Debian 9 estás listo para desarrollar
aplicaciones complejas basadas en frameworks como Yii, CodeIgniter, etc. o instalar
CMS como WordPress y similares. Un servidor LAMP siempre es el cimiento sobre el
que se basan estos sistemas, por lo que es interesante saber desplegarlo de forma
rápida y eficaz.
Es cierto que existen paquetes «todo en uno» que realizan estas tareas de forma
más automatizada, pero muchos preferimos conocer cómo funciona cada pieza del
sistema y cómo configurarla de forma específica.
Si te ha quedado alguna duda, o tienes preguntas o sugerencias sobre nuevos
artículos, déjame un mensaje.
Y si has encontrado verdaderamente útil este artículo, ¡siempre puedes invitarme a
un café (https://buymeacoff.ee/XQEk1eGFa)!
(https://buymeacoff.ee/XQEk1eGFa)
(5 votos, promedio: 5,00 de 5)
TAGS: APACHE (HTTPS://CHACHOCOOL.COM/TAG/APACHE/), DEBIAN
(HTTPS://CHACHOCOOL.COM/TAG/DEBIAN/), MYSQL (HTTPS://CHACHOCOOL.COM/TAG/MYSQL/), PHP
Este(HTTPS://CHACHOCOOL.COM/TAG/PHP/)
sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de
las mencionadas cookies y la aceptación de nuestra política de cookies (https://chachocool.com/politica-de-cookies/), pinche el enlace para mayor información
ACEPTAR
Deja un comentario
Tu comentario aquí...
Nombre (obligatorio)
Correo electrónico (ob
Sitio web
PUBL I C A R COMENTARIO
Aviso legal (https://chachocool.com/aviso-legal/) |
Política de privacidad (https://chachocool.com/politica-deprivacidad/) |
Política de cookies (https://chachocool.com/politica-de-cookies/)
Descargar