GNU/Linux >> Tutoriales Linux >  >> Debian

Tutorial del servidor LAMP de Debian 9 con Apache, PHP 7 y MariaDB

LAMP es la abreviatura de L entrada, A pache, M ySQL, P HP. Este tutorial muestra cómo puede instalar un servidor web Apache en un servidor Debian Stretch (9) con PHP 7 (mod_php) y compatibilidad con MariaDB. MariaDB es una bifurcación del conocido servidor de base de datos MySQL, proporciona un conjunto de características compatibles con MySQL y es un poco más rápido según los puntos de referencia que encontré en Internet. MariaDB funcionará con todas las aplicaciones que requieran MySQL como Wordpress, Joomla, etc.

Una configuración LAMP es una base perfecta para sistemas CMS como Joomla, Wordpress o Drupal.

1 nota preliminar

En este tutorial, utilizo el nombre de host server1.example.com con la dirección IP 192.168.1.100. Estas configuraciones pueden diferir para usted, por lo que debe reemplazarlas cuando corresponda.

2 Instalación de MariaDB como reemplazo de MySQL

Primero, instalamos MariaDB así:

apt-get -y install mariadb-server mariadb-client

A continuación, protegeremos MariaDB con mysql_secure_installation dominio. Ejecute el siguiente comando y siga el asistente.

mysql_secure_installation

La entrada recomendada se muestra en rojo.

mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none): <-- Hit return
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] <-- y
New password: <-- Enter the new password for the MariaDB root user
Re-enter new password: <-- Enter the password again
Password updated successfully!
Reloading privilege tables..
... Success!

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] <-- y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] <-- y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] <-- y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] <-- y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!

La configuración de MariaDB está protegida ahora.

3 Instalación del servidor web Apache

Apache está disponible como paquete Debian, por lo que podemos instalarlo así:

apt-get -y install apache2

Ahora dirija su navegador a http://192.168.1.100, y debería ver la página de marcador de posición de Apache2 (¡Funciona!):

La raíz de documentos predeterminada de Apache es /var/www en Debian, y el archivo de configuración es /etc/apache2/apache2.conf. Las configuraciones adicionales se almacenan en subdirectorios del directorio /etc/apache2 como /etc/apache2/mods-enabled (para módulos de Apache), /etc/apache2/sites-enabled (para hosts virtuales) y /etc/apache2/conf -habilitado.

4 Instalación de PHP 7.1

Podemos instalar PHP y el módulo Apache PHP de la siguiente manera:

apt-get -y install php7.0 libapache2-mod-php7.0

Debemos reiniciar Apache después:

service apache2 restart

5 Probar PHP / Obtener detalles sobre su instalación de PHP

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.

nano /var/www/html/info.php
<?php
phpinfo();

Ahora llamamos a ese archivo en un navegador (por ejemplo, http://192.168.1.100/info.php):

Como puede ver, PHP 7.0 está funcionando y funciona a través del controlador de Apache 2.0, como se muestra en la línea de la API del servidor. Si se desplaza hacia abajo, verá todos los módulos que ya están habilitados en PHP5. MySQL/MariaDB no aparece en la lista, lo que significa que aún no tenemos compatibilidad con MySQL en PHP5.

6 Obtener compatibilidad con MySQL y MariaDB en PHP

Para obtener soporte de MySQL en PHP, instalaremos el paquete php7.0-mysql. Es una buena idea instalar algunos otros módulos de PHP, ya que podría necesitarlos para sus aplicaciones. Puede buscar módulos PHP 7 disponibles como este:

apt-cache search php7.0

Elige los que necesites e instálalos así:

apt-get -y install php7.0-mysql php7.0-curl php7.0-gd php7.0-intl php-pear php-imagick php7.0-imap php7.0-mcrypt php-memcache php7.0-pspell php7.0-recode php7.0-sqlite3 php7.0-tidy php7.0-xmlrpc php7.0-xsl

Ahora reinicie Apache:

service apache2 restart

7 PHP Cache para mejorar la velocidad de PHP

Para acelerar PHP, se debe instalar un Opcache. Compruebe si el módulo PHP Opcache se ha instalado y activado correctamente. Ejecute este comando:

php --version

La salida contendrá la línea que marqué en rojo.

PHP 7.0.27-0+deb9u1 (cli) (built: Jan 5 2018 13:51:52) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.0.27-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies

Si no ve el módulo Opcache en el resultado, instálelo con este comando:

apt-get -y install php7.0-opcache

Hay un caché más que podría ser útil, su nombre es APCu. APCu es un caché de código de operación de PHP gratuito para almacenar en caché y optimizar el código intermedio de PHP.

APCu se puede instalar de la siguiente manera:

apt-get -y install php-apcu

Ahora reinicie Apache:

service apache2 restart

Ahora vuelva a cargar http://192.168.1.100/info.php en su navegador y desplácese hacia abajo hasta la sección de módulos nuevamente. Ahora debería encontrar muchos módulos nuevos allí, incluido el módulo MySQL que se usa como controlador MariaDB:

8 phpMyAdmin

phpMyAdmin es una interfaz web a través de la cual puede administrar sus bases de datos MySQL y MariaDB. Es una buena idea instalarlo:

apt-get -y install phpmyadmin

Verá las siguientes preguntas:

Web server to reconfigure automatically: <-- apache2

Configure database for phpmyadmin with dbconfig-common?<-- Yes

MySQL application password for phpmyadmin: <-- Press enter, apt will create a random password automatically.

Luego, puede acceder a phpMyAdmin en http://192.168.1.100/phpmyadmin/:

9 Habilitar el inicio de sesión raíz de MySQL para phpMyAdmin

Si bien puede iniciar sesión como usuario raíz en MariaDB en el shell, el inicio de sesión raíz no funcionará en phpMyAdmin. Para permitir que el usuario root también use phpMyAdmin, ejecute el siguiente comando en el shell:

echo "UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root' AND plugin = 'unix_socket';FLUSH PRIVILEGES;" | mysql -u root -p

10 enlaces

  • Apache:http://httpd.apache.org/
  • PHP:http://www.php.net/
  • MySQL:http://www.mysql.com/
  • Debian:http://www.debian.org/
  • phpMyAdmin:http://www.phpmyadmin.net/

Debian
  1. Cómo configurar Opencart con LAMP (PHP, Apache, Mariadb) en Debian 11

  2. Cómo instalar y configurar PHP y Apache (pila LAMP) en Debian 11

  3. Instalar y configurar Apache y PHP con cgi en Ubuntu o Debian

  4. Configure Apache y Php con mod_fcgid en Ubuntu/Debian

  5. Instale Zenario con Apache, PHP y MariaDB en CentOS 7

Instale WordPress 5 con Apache en Debian 9

Instale Lighttpd con PHP FPM y MariaDB (LLMP) en Debian 9

Cómo instalar Apache, MariaDB, PHP (LAMP Stack) en Debian 11

Cómo instalar Apache, MariaDB y PHP (LAMP) en Debian 11

Cómo instalar y configurar LAMP en Debian 11 (Bullseye)

Cómo configurar la pila LAMP (Apache, MariaDB y PHP) en Debian 11