Windows 10: Instalación de un servidor web local (Apache, MySQL, PHP) en WSL 1 y WSL 2.

¿Desea ejecutar un servidor web en su ordenador con Windows 10, pero no quiere complicarse con la configuración manual o instalar paquetes pesados como Denwer? Hay una forma excelente y moderna de hacerlo. Puede utilizar el subsistema Windows para Linux (WSL) para implementar un entorno completo para el desarrollo web directamente en su máquina.

ChicMe WWChicMe WW

WSL permite ejecutar el entorno Linux sin salir de Windows. Es la opción ideal para instalar el paquete Apache, MySQL y PHP. Obtiene todas las ventajas y la flexibilidad de un servidor real, pero trabaja en el sistema operativo al que está acostumbrado. Veremos cómo hacerlo en ambas versiones del subsistema: WSL 1 y WSL 2.

Este enfoque es ideal para el desarrollo local de sitios web, la prueba de scripts o el estudio de tecnologías web. Todo funcionará de forma aislada en su ordenador, sin interferir con el sistema principal, y no necesitará crear una máquina virtual ni reinstalar el sistema operativo.

Habilitar el subsistema Windows para Linux.

Redmagic WWRedmagic WW

Para habilitar el componente,«Subsistema Windows para Linux»en Windows 10, debe realizar los siguientes pasos:

Paso 1: Con el comando: optionalfeatures en el cuadro de diálogo «Ejecutar» abra «Componentes de Windows».

Paso 2: Active la opción«Subsistema Windows para Linux».

Paso 3: Vaya a Microsoft Store descargue e instale la aplicación Ubuntu para Windows.

Paso 4:C mediante el menú «Inicio» ejecuteUbuntu.En la ventana del terminal, al iniciar por primera vez, deberá introducir un nuevo nombre de usuario UNIX(nombre de usuario)y contraseña(contraseña).

Para obtener más información sobre cómo hacerlo, consulte las guías:

  • Cómo instalar el subsistema WSL 2 de Windows para Linux en Windows 10
  • Cómo instalar el subsistema Wsl 1 de Windows para Linux.
  • Instrucciones oficiales de Microsoft.

Creación de un directorio para el proyecto web.

Geekbuying WWGeekbuying WW

Si utiliza WSL 1, es recomendable colocar los archivos del proyecto en los discos del sistema de archivos Windows: C, D, E. Si utiliza WSL 2, también puede utilizar discos locales o crear un directorio para el sitio en el sistema de archivos Linux.

Paso 5:Cree en el Explorador de Windows 10 un directorio para el sitio (proyecto) test.local:

S:\Projects\test.local\public_html

Si va a utilizar WSL 2, se recomienda crear un directorio para el sitio en el sistema de archivos Linux. En este caso, colocaremos la carpeta del proyecto aquí: \home\main\projects\test.local\public_html

Para ello, ejecutaremos el comando:

sudo mkdir -p /home/main/projects/test.local/public_html

Donde sustituya «main» con el nombre de usuario UNIX creado al iniciar wsl por primera vez.

Para evitar problemas de acceso, ejecute el comando:

Aquí también sustituya «main» con su nombre de usuario UNIX.

Esto evitará errores y garantizará el máximo rendimiento.

Paso 6: Kpara acceder a los archivos WSL Linux desde el explorador de Windows 10.

En el directorio Linux FS, introduzca:

Se abrirá una ventana del explorador, ubicada dentro de tu distribución de Linux.

Más información en nuestro artículo:Acceso a los archivos WSL Linux mediante el explorador de Windows 10

Además, para que sea más cómodo trabajar con los directorios del sistema de archivos Linux, puede instalar en Ubuntu, por ejemplo, «Midnight Commander»:

Midnight Commander se inicia introduciendo el comando:

Instalación de los programas necesarios en Ubuntu para Windows 10.

Geekbuying WWGeekbuying WW

Paso 7:C mediante el menú «Inicio» inicieUbuntu.

Paso 8:Actualice el índice local de paquetes apt en Ubuntu ejecutando el comando:

Paso 9:A continuación, es necesario actualizar el software instalado:

A la solicitud «¿Desea continuar? [Y/n]» pulsa la tecla Y.

Instalación de Apache.

nubia Many GEOsHomestyler WW

Más de la mitad de todos los sitios web activos utilizan el servidor web Apache. Es una herramienta muy potente y flexible.

Paso 10:Instalemos Apache ejecutando el comando:

Verá una lista de los paquetes que se instalarán, así como el espacio en disco que ocuparán. PulseYpara continuar con la instalación.

Instalación del servidor MySQL.

Italojewerly WWItalojewerly WW

MySQL: sistema de gestión de bases de datos. Organiza y proporciona acceso a las bases de datos donde el sitio web puede almacenar información.

Paso 11:Instalemos el servidor MySQL:

sudo apt install mysql-server

Haga clic enYpara continuar con la instalación. Una vez completada la instalación, necesitaremos ejecutar algunos comandos adicionales para configurar nuestro entorno MySQL

Paso 12:Instalemos php y otros paquetes necesarios para el desarrollo web:

PHP es el componente responsable de procesar el código para mostrar contenido dinámico.

sudo apt install php libapache2-mod-php php-mysql php-xml php-curl

Nota: Si es necesario instalar una versión específica de php, por ejemplo, 7.4.x, debe ejecutar el comando:

Activemos el módulo Mod rewrite en Apache:

Redmagic WWRedmagic WW

En resumen, mod_rewrite es un módulo para el servidor web Apache que realiza la función de conversión de URL.

Paso 13:Ejecuta el comando:

Justfashionnow WWGshopper Many GEOs

Si diseñas sitios web o estás aprendiendo a programar en PHP con bases de datos, es conveniente tener tu propio servidor web directamente en el ordenador. En Windows 10, esto se puede hacer con WSL, un subsistema que ejecuta Linux dentro del sistema. Al instalar WSL 1 o WSL 2, puede configurar fácilmente Apache, MySQL y PHP, como en un servidor real. La diferencia entre WSL 1 y WSL 2 radica en la velocidad y la compatibilidad: la segunda versión funciona más rápido, especialmente con archivos, pero la primera es más fácil de configurar. Lo importante es que la elección depende de tus tareas, pero ambas opciones te permiten crear rápidamente un sitio web local y empezar a trabajar.

Cambiar el método de autenticación MySQL del usuario root.

nubia Many GEOsnubia Many GEOs

Es necesario cambiar el método de autenticación de MySQL para el usuario root siguiendo estos pasos:

Paso 14:Iniciemos el servicio mysql.

Paso 15:Conectémonos al servidor MySQL con el usuario root estándar, que se creó al instalar MySQL en su ordenador:

Paso 16:Cuando se le solicite la contraseña, pulse Enter, ya que, por defecto, el usuario root creado durante la instalación no tiene contraseña.

Nota: En los servidores Ubuntu que utilizan MySQL (5.7 y versiones posteriores), la autenticación del usuario root se realiza mediante el complementoauth_socket, y no mediante contraseña. En muchos casos, esto aumenta la seguridad, pero puede complicar la configuración del acceso al usuario root para phpMyAdmin y otros programas.

Paso 17:Para comprobar el método de autenticación que se utiliza para el usuario root, ejecute el comando:

SELECT user, authentication_string, plugin, host FROM mysql.user WHERE user="root";

Paso 18:Si en la respuesta a la solicitud ve que se utiliza la autenticación mediante el complemento auth_socket, es necesario cambiar esta configuración. Para ello, introduzca el comando:

ALTER USER “root”@'localhost' IDENTIFIED WITH mysql_native_password BY “root”;

Paso 19:Ejecutemos el comando FLUSH PRIVILEGES, que aplicará los cambios realizados:

Redmagic WWRedmagic WW

Creación de la base de datos.

Geekbuying WWGeekbuying WW

Paso 20:Crearemos una base de datos para el proyecto web test.local. Para ello, introduzca el siguiente comando en la línea de comandos de MySQL:

CREATE DATABASE testlocal;

Paso 21:Para finalizar el trabajo con la línea de comandos MySQL, salgamos de ella:

ChicMe WWChicMe WW

Instalación de phpMyAdmin.

Italojewerly WWItalojewerly WW

Paso 22:Ejecutamos el comando:

sudo apt install phpmyadmin

Paso 23:En el primer cuadro de diálogo, pulse la barra espaciadora para seleccionar Apache, a continuación pulse la tecla Tab y luego Enter.

Paso 24:Seleccione Yes, para configurar la base de datos a petición, utilice dbconfig-common.

Paso 25:Especifique la contraseña del usuario root de MySQL.

Paso 26:Confirme la contraseña

Paso 27:Habilitaremos las extensiones PHP necesarias:

Paso 28:Reinicie Apache:

sudo service apache2 restart

Ahora puede acceder a phpMyAdmin en la siguiente URL: http://localhost/phpmyadmin/ Puede iniciar sesión utilizando el nombre de usuario root y contraseña root, configurados durante la instalación de MySQL.

Configuración de hosts virtuales en Apache.

Redmagic WWRedmagic WW

En Ubuntu, el archivo de configuración de los hosts virtuales de Apache se encuentra en la siguiente ruta /etc/apache2/sites-available/*.conf. En Apache ya hay configurado un host virtual por defecto en el archivo 000-default.conf. Tomemos este archivo como base.

Paso 29:Cree una copia del archivo 000-default.conf ejecutando el comando:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/test.local.conf

Paso 30:Realicemos cambios en el archivo test.local.conf utilizando el editor nano:

Contenido del archivo test.com.conf después de las modificaciones para Wsl 2 si ha creado un directorio para el sitio en el sistema de archivos Linux:

Atención: No olvide sustituir el nombre de usuario UNIX (username) por el suyo (Paso: 7), en mi caso es almanex.

Contenido del archivo test.com.conf después de las modificaciones para Wsl 1 y Wsl 2, donde los archivos del proyecto se encuentran en el disco del sistema de archivos Windows – C, D, E:

Atención: ¡No olvide sustituir la letra de la unidad! En el ejemplo utilizamos la unidad C.

Paso 31:Después de realizar los cambios, guarde y cierre el archivo con la combinación de teclas CTRLX. Confirme la operación con la tecla Y y pulse ENTER.

Paso 32:Activemos el nuevo host virtual con la utilidad a2ensite:

sudo a2ensite test.local.conf

Paso 33:A continuación, desactivaremos el sitio predeterminado 000-default.conf:

sudo a2dissite 000-default.conf

Paso 34:Reiniciemos el servicio apache:

sudo service apache2 restart

Redmagic WWRedmagic WW

Redireccionamiento de test.local al servidor web local.

Vagamo USGeekbuying WW

Su proyecto está disponible en la dirección http://localhost/

Para que el nombre de dominio http://test.local estaba relacionado con su servidor web local, abra el archivo hosts, ubicado en la dirección C:\Windows\System32\drivers\etc y añada las siguientes líneas:

127.0.0.1 test.local

172.30.69.65 test.local

Para determinar la dirección IP de su interfaz de red (en mi caso es 172.30.69.65), puede utilizar el comandoipaddress en el terminal (véase la imagen siguiente).

Comandos para iniciar y detener el servidor web.

Redmagic WWRedmagic WW

Ya está, ahora, antes de empezar a trabajar con su proyecto web, debe iniciar Apache y MySQL. Para ello, introduzca los siguientes comandos por orden:

sudo service apache2 start

Para detener el servidor web:

sudo service apache2 stop

Opcional: Para que sea más fácil iniciar y detener el servidor web, puede crear scripts bash start.sh y stop.sh.

Cómo crear un script start.sh:

Paso 1:Abra el terminal y cree el archivo con el comando:

Paso 2:Pegue el siguiente contenido, sustituyendo contraseña por la contraseña que ha establecido para el usuario de Ubuntu:

#!/bin/bash

echo password | sudo -S sudo service apache2 start

echo contraseña | sudo -S sudo service mysql start

exit 0

Paso 3:Es necesario editar los derechos de acceso para start.sh. Ejecuta el comando:

sudo chmod -R 755 ./start.sh

Script stop.sh:

Paso 4:Cree el archivo con el comando:

Contenido del archivo stop.sh:

#!/bin/bash

echo password | sudo -S sudo service apache2 stop

echo contraseña | sudo -S sudo service mysql stop

exit 0

Paso 5:Edite los derechos de acceso:

sudo chmod -R 755 ./stop.sh

Comprobación del funcionamiento del servidor web.

hidemynameItalojewerly WW

Para comprobar el funcionamiento del servidor web, instalemos en test.local sistema de gestión de contenidos, por ejemplo, OctoberCMS, MODX Revolution o WordPress.

Para ello, descargue el archivo del sistema WordPress desde la página oficial y descomprímalo en el directorio que hemos creado

S:\Projects\test.local\public_html

o

/home/main/projects/test.local/public_html

Para instalar el sistema, es necesario abrir el asistente. Abre la dirección http://test.local en el navegador. A continuación, responde a todas las preguntas del asistente y haz clic en el botón «Adelante», introduzca la información de conexión a la base de datos testlocal etc.

Esperaremos a que finalice el proceso de instalación. ¡Listo!

Como ves, instalar un servidor local en WSL no es tan complicado como puede parecer a primera vista. Lo principal es seguir las instrucciones paso a paso y no tener miedo a la línea de comandos. Este método te da acceso completo a una herramienta potente y flexible para el desarrollo web directamente en tu ordenador con Windows.

La elección entre WSL 1 y WSL 2 depende de tus tareas. Si trabajas con archivos en una carpeta de Windows, WSL 1 puede resultar más rápido. Para todo lo demás, especialmente para trabajar con bases de datos y aplicaciones que requieren un alto rendimiento, WSL 2 será la mejor solución gracias a su arquitectura moderna.

Ahora tienes tu propio entorno de prueba, casi idéntico al alojamiento real. Puedes crear y depurar sitios web con tranquilidad, instalar CMS como WordPress y experimentar sin temor a estropear nada en Internet. Es tu campo de pruebas personal para la creatividad y el aprendizaje.

El resto está en tus manos. Familiarízate con la configuración del servidor, prueba diferentes versiones de PHP, conecta otras bases de datos. Este servidor local es tu base fiable para cualquier proyecto web. ¡Buena suerte con el desarrollo!

Sunsky-online WWhidemynameItalojewerly WWItalojewerly WWItalojewerly WWItalojewerly WW
¿Qué función considera más importante en un nuevo smartphone??
Share to friends
Sergey Petrov

Especialización: dispositivos inteligentes para el hogar. Investigo y pruebo varios gadgets inteligentes, desde asistentes de voz hasta bombillas inteligentes. En este sitio te cuento cómo estos aparatos pueden hacer que tu casa sea más cómoda y tecnológicamente avanzada.

Rate author
Appliances-News.com
Add a comment