<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: RogerTM</title>
    <description>The latest articles on DEV Community by RogerTM (@rogertm).</description>
    <link>https://dev.to/rogertm</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F290237%2F24ec204a-3a74-4f05-b904-c1b1f0c26c26.jpeg</url>
      <title>DEV Community: RogerTM</title>
      <link>https://dev.to/rogertm</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rogertm"/>
    <language>en</language>
    <item>
      <title>WordPress Multi Dominio</title>
      <dc:creator>RogerTM</dc:creator>
      <pubDate>Wed, 22 Jul 2026 21:00:30 +0000</pubDate>
      <link>https://dev.to/rogertm/wordpress-multi-dominio-g4k</link>
      <guid>https://dev.to/rogertm/wordpress-multi-dominio-g4k</guid>
      <description>&lt;h2&gt;
  
  
  Introducción
&lt;/h2&gt;

&lt;p&gt;Cuando usamos WordPress en su versión multi sitio, este nos brinda dos tipos de instalación, &lt;strong&gt;sub-dominios&lt;/strong&gt; o &lt;strong&gt;sub-directorios&lt;/strong&gt;. En este caso, vamos a configurar nuestra instalación para que nos permita administrar una red &lt;strong&gt;multi dominios&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Primero te invito a que leas este artículo que detalla &lt;a href="https://wordpress.org/support/article/create-a-network/" rel="noopener noreferrer"&gt;cómo hacer una instalación multi sitio en WordPress&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Otra cosa importante es que necesitamos &lt;a href="https://rogertm.dev/configurar-virtual-host-servidor-lamp-local/" rel="noopener noreferrer"&gt;configurar un Virtual Host&lt;/a&gt; para nuestro proyecto, de otra manera nos será imposible, pues WordPress nos dará solo la opción de &lt;strong&gt;sub-directorios&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Virtual Host
&lt;/h2&gt;

&lt;p&gt;Lo primero que tenemos que hacer es crear un &lt;strong&gt;Virtual Host&lt;/strong&gt; para nuestro proyecto. Podemos guiarnos por el ejemplo que puse anteriormente, pero para un mejor entendimiento, voy a poner aquí cómo debe quedar el archivo de configuración de nuestro &lt;strong&gt;dominio&lt;/strong&gt; principal.&lt;/p&gt;

&lt;p&gt;En este ejemplo vamos a crear un dominio principal bajo el nombre de &lt;strong&gt;xyz.sandbox&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;VirtualHost *:80&amp;gt; 
    ServerName xyz.sandbox 
    ServerAlias www.xyz.sandbox 
    ServerAdmin webmaster@xyz.sandbox 
    DocumentRoot /var/www/xyz.sandbox 
    ErrorLog ${APACHE_LOG_DIR}/error.log 
    CustomLog ${APACHE_LOG_DIR}/access.log combined 

    &amp;lt;Directory /var/www/xyz.sandbox&amp;gt; 
        Options Indexes FollowSymLinks 
        AllowOverride All 
        Require all granted 
    &amp;lt;/Directory&amp;gt; 
&amp;lt;/VirtualHost&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Una vez sobre pasada esta parte, podemos acceder desde nuestro navegador a la dirección &lt;a href="http://xyz.sandbox" rel="noopener noreferrer"&gt;http://xyz.sandbox&lt;/a&gt;. Ya luego solo faltaría &lt;a href="https://wordpress.org/support/article/how-to-install-wordpress/" rel="noopener noreferrer"&gt;hacer una instalación de WordPress&lt;/a&gt; en el directorio &lt;code&gt;/var/www/xyz.sandbox/&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Multi Dominio
&lt;/h2&gt;

&lt;p&gt;Con nuestra instalación de WordPress ya configurada como una red multi sitio, podemos pasar al paso más importante, que es habilitar la configuración para &lt;strong&gt;multi dominio&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Antes, vamos a verificar que nuestra configuración esté correcta. Si seguimos los pasos que nos indica la documentación oficial sobre &lt;a href="https://wordpress.org/support/article/create-a-network/" rel="noopener noreferrer"&gt;cómo crear una red con WordPress&lt;/a&gt;, nuestros archivos &lt;code&gt;wp-config.php&lt;/code&gt; y &lt;code&gt;.htaccess&lt;/code&gt; debieron quedar de la siguiente forma:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="cm"&gt;/* Multi Site */&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'WP_ALLOW_MULTISITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'MULTISITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'SUBDOMAIN_INSTALL'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'DOMAIN_CURRENT_SITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'xyz.sandbox'&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'PATH_CURRENT_SITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'/'&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'SITE_ID_CURRENT_SITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'BLOG_ID_CURRENT_SITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="cm"&gt;/* That's all, stop editing! Happy publishing. */&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;En este caso, solo estamos mostrando la parte que nos interesa, pues este archivo incluye &lt;a href="https://wordpress.org/support/article/editing-wp-config-php/" rel="noopener noreferrer"&gt;muchas más configuraciones&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).) $1 [L] RewriteRule ^(..php)$ $1 [L]
RewriteRule . index.php [L]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Finalmente podemos configurar nuestra instalación de WordPress para soportar &lt;strong&gt;multi dominio&lt;/strong&gt;. Lo único que tenemos que hacer es declarar una serie de constantes en nuestro archivo &lt;code&gt;wp-config.php&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Entonces, bajo las definiciones que teníamos antes, ponemos las nuevas, quedando todo de esta forma:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="cm"&gt;/* Multi Site */&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'WP_ALLOW_MULTISITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'MULTISITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'SUBDOMAIN_INSTALL'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'DOMAIN_CURRENT_SITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'xyz.sandbox'&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'PATH_CURRENT_SITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'/'&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'SITE_ID_CURRENT_SITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'BLOG_ID_CURRENT_SITE'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="cm"&gt;/* Multi Domain */&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'COOKIE_DOMAIN'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;$_SERVER&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'HTTP_HOST'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'ADMIN_COOKIE_PATH'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'/'&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'COOKIEPATH'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'/'&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nb"&gt;define&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'SITECOOKIEPATH'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'/'&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="cm"&gt;/* That's all, stop editing! Happy publishing. */&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Agregando nuevos sitios
&lt;/h2&gt;

&lt;p&gt;Ya tenemos nuestra red de WordPress montada y configurada para trabajar con varios dominios. Ahora solo nos queda comenzar a crear nuevos sitios y asignarle esos dominios.&lt;/p&gt;

&lt;p&gt;Entonces accedemos a &lt;em&gt;Network Admin&lt;/em&gt; &amp;gt; &lt;em&gt;Sites&lt;/em&gt; &amp;gt; &lt;em&gt;Add New&lt;/em&gt;, aquí crearemos un nuevo sitio llamado ABC.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4758ch4tcx0qqpq5h680.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4758ch4tcx0qqpq5h680.png" alt="WordPress Multi Dominio - Nuevo Sitio" width="710" height="575"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Por defecto, WordPress solo deja crear &lt;strong&gt;sub-dominios&lt;/strong&gt;, pero como veremos en a continuación, esto lo podemos arreglar si procedemos a editar el sitio que hemos creado:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe3uyhdt813we2hd9z1xk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe3uyhdt813we2hd9z1xk.png" alt="WordPress Multi Dominio - Editar Sitio" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Editamos la URL del sitio y apuntamos al nuevo dominio que debemos crear, en nuestro caso &lt;strong&gt;abc.sandbox&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3crx8atd9qkqzxoo9iit.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3crx8atd9qkqzxoo9iit.png" alt="WordPress Multi Dominio - Configurar Sitio" width="710" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Guardamos los cambios y listo.&lt;/p&gt;

&lt;p&gt;Antes de concluir, es importante decir que por cada sitio que creemos en nuestra red, debemos &lt;a href="https://dev.to/rogertm/como-crear-y-configurar-un-virtual-host-en-un-servidor-lamp-local-1dc5"&gt;configurar un Virtual Host&lt;/a&gt;, de lo contrario no funcionaría.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusiones
&lt;/h2&gt;

&lt;p&gt;Hasta aquí hemos visto cómo podemos convertir una simple instalación de WordPress multi site, en una red &lt;strong&gt;multi dominio&lt;/strong&gt;. Esto nos brinda muchas ventajas a la hora de mantener nuestros sitios, pues desde una misma instancia podemos administrar nuestros proyectos, sin tener que estar saltando de un sitio a otro, por ejemplo, para actualizar &lt;em&gt;plugins&lt;/em&gt;, o el &lt;em&gt;core&lt;/em&gt; de WordPress.&lt;/p&gt;

&lt;h3&gt;
  
  
  Documentación
&lt;/h3&gt;

&lt;p&gt;Siempre es bueno tener a mano algo de documentación, personalmente &lt;a href="https://twitter.com/roger213tm/status/1407056632329158656" rel="noopener noreferrer"&gt;recomiendo leer la documentación oficial&lt;/a&gt; de lo que sea que usemos. Aquí les dejo algunos links que considero importantes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://wordpress.org/support/article/before-you-create-a-network/" rel="noopener noreferrer"&gt;Before You Create A Network&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://wordpress.org/support/article/create-a-network/" rel="noopener noreferrer"&gt;Create A Network&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://wordpress.org/support/article/wordpress-multisite-domain-mapping/" rel="noopener noreferrer"&gt;WordPress Multisite Domain Mapping&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Cómo crear y configurar un Virtual Host en un servidor LAMP local</title>
      <dc:creator>RogerTM</dc:creator>
      <pubDate>Wed, 22 Jul 2026 20:58:45 +0000</pubDate>
      <link>https://dev.to/rogertm/como-crear-y-configurar-un-virtual-host-en-un-servidor-lamp-local-1dc5</link>
      <guid>https://dev.to/rogertm/como-crear-y-configurar-un-virtual-host-en-un-servidor-lamp-local-1dc5</guid>
      <description>&lt;h2&gt;
  
  
  Introducción
&lt;/h2&gt;

&lt;p&gt;Estos son unos sencillos pasos que usualmente sigo para configurar un &lt;strong&gt;Virtual Host&lt;/strong&gt; para los proyectos en los que suelo trabajar, así que intentaré explicarlo de la manera más clara y fácil posible.&lt;/p&gt;

&lt;p&gt;Asumo que estés familiarizado con un entorno &lt;strong&gt;Linux/Ubuntu&lt;/strong&gt;, así que no entraré en muchos detalles, a fin de cuentas no soy un experto en el manejo de servidores, pero esto es algo realmente sencillo.&lt;/p&gt;

&lt;h2&gt;
  
  
  Configuración
&lt;/h2&gt;

&lt;p&gt;Para crear un &lt;strong&gt;Virtual Host&lt;/strong&gt;, lo primero que necesitamos en un archivo de configuración con con las directivas necesarias para tal fin.&lt;/p&gt;

&lt;p&gt;En nuestra terminal ejecutamos el siguiente comando (en mi caso uso &lt;strong&gt;nano&lt;/strong&gt;, pero puedes usar el editor que más re plazca, como &lt;strong&gt;vim&lt;/strong&gt; por ejemplo) con el cual crearemos el archivo de configuración.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;nano /etc/apache2/sites-available/example.sandbox.conf
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Luego copiamos el siguiente bloque, sustituyendo &lt;code&gt;example.sandbox&lt;/code&gt; por el nombre de dominio que desees usar. Salvamos los cambios y salimos del editor.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;VirtualHost *:80&amp;gt; 
    ServerName example.sandbox 
    ServerAlias www.example.sandbox 
    ServerAdmin webmaster@example.sandbox 
    DocumentRoot /var/www/example.sandbox 
    ErrorLog ${APACHE_LOG_DIR}/error.log 
    CustomLog ${APACHE_LOG_DIR}/access.log combined 

    &amp;lt;Directory /var/www/example.sandbox&amp;gt; 
        Options Indexes FollowSymLinks 
        AllowOverride All 
        Require all granted 
    &amp;lt;/Directory&amp;gt; 
&amp;lt;/VirtualHost&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Apache
&lt;/h2&gt;

&lt;p&gt;Luego debemos decirle a &lt;strong&gt;Apache&lt;/strong&gt; que habilite la configuración que acabamos de crear, para poder acceder luego desde el navegador al dominio que hemos elegido, en nuestro caso &lt;code&gt;example.sandbox&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Para ello, ejecutamos el siguiente comando desde nuestra terminal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ sudo a2ensite example.sandbox.conf
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Si todo salió bien, recibiremos una respuesta como esta:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Enabling site example.sandbox. 
To activate the new configuration, you need to run: 
  systemctl reload apache2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ahora, como indica el mensaje en la línea de comandos, debemos reiniciar el servicio de &lt;strong&gt;Apache&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl reload apache2.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Para estar seguros que la configuración que hemos creado no presenta errores, podemos usar el siguiente comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apache2ctl configtest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;En caso de que todo esté bien, la respuesta será &lt;code&gt;Syntax OK&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  IP
&lt;/h2&gt;

&lt;p&gt;Este paso es muy sencillo, solo debemos apuntar nuestro dominio &lt;code&gt;example.sandbox&lt;/code&gt; al &lt;strong&gt;IP&lt;/strong&gt; de nuestro ordenador, que por regla general es &lt;code&gt;127.0.0.1&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Para ello tenemos que editar el archivo &lt;code&gt;hosts&lt;/code&gt; de nuestro ordenador, así que una vez más usamos la línea de comandos:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;nano /etc/hosts
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Entonces escribimos este bloque al final de dicho archivo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# VirtualHosts
127.0.0.1       example.sandbox
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Directorio de trabajo
&lt;/h2&gt;

&lt;p&gt;Finalmente solo nos queda crear el directorio donde vamos a alojar nuestro proyecto, que en este caso debe coincidir con lo que tenemos en el bloque &lt;code&gt;Directory&lt;/code&gt; del archivo de configuración &lt;code&gt;example.sandbox.conf&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo mkdir&lt;/span&gt; /var/www/example.sandbox
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;El siguiente paso es asignarle al usuario actual (el usuario con que estamos autenticados en el sistema) la propiedad del directorio que acabamos de crear. También lo agregaremos al grupo de &lt;strong&gt;Apache&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo chown&lt;/span&gt; &lt;span class="nt"&gt;-R&lt;/span&gt; &lt;span class="nv"&gt;$USER&lt;/span&gt;:www-data /var/www/example.sandbox/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Proyecto
&lt;/h2&gt;

&lt;p&gt;Ya estamos listos para crear nuestro proyecto.&lt;/p&gt;

&lt;p&gt;Como vimos en el paso anterior, ahora el directorio &lt;code&gt;/var/www/example.sandbox/&lt;/code&gt; nos pertenece, así que ya no necesitamos usar el comando &lt;code&gt;sudo&lt;/code&gt; para trabajar en él.&lt;/p&gt;

&lt;p&gt;Ya podemos crear nuestra primera página. En este sencillo ejemplo haremos lo siguiente:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;nano /var/www/example.sandbox/index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Pega este bloque de código en el archivo &lt;code&gt;index.html&lt;/code&gt; que estamos creando y salva los cambios.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;html&amp;gt;
  &amp;lt;head&amp;gt;
    &amp;lt;title&amp;gt;Example Project&amp;lt;/title&amp;gt;
  &amp;lt;/head&amp;gt;
  &amp;lt;body&amp;gt;
    &amp;lt;h1&amp;gt;Hello World!&amp;lt;/h1&amp;gt;

    &amp;lt;p&amp;gt;This is the landing page of &amp;lt;strong&amp;gt;Example Project&amp;lt;/strong&amp;gt;.&amp;lt;/p&amp;gt;
  &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ahora ya puedes acceder desde tu navegador a la dirección &lt;a href="http://example.sandbox/" rel="noopener noreferrer"&gt;http://example.sandbox/&lt;/a&gt; y verás la página que acabamos de crear.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusiones
&lt;/h2&gt;

&lt;p&gt;Usar &lt;strong&gt;Virtual Host&lt;/strong&gt; en nuestro servidor local ofrece muchas ventajas, sobre todo porque se asemeja mucho más al entorno que tendremos en &lt;strong&gt;producción&lt;/strong&gt; que si tuviéramos una dirección del tipo &lt;strong&gt;&lt;a href="http://localhost/example.com/" rel="noopener noreferrer"&gt;http://localhost/example.com/&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Un caso de uso es cuando trabajamos con una instalación de &lt;a href="https://wordpress.org/support/article/create-a-network/" rel="noopener noreferrer"&gt;WordPress Multi Site&lt;/a&gt;, en este caso podremos usar la configuración de subdominios, y no estaremos atados a la configuración de directorios, que no siempre es la deseada en producción.&lt;/p&gt;

&lt;p&gt;Espero que esta sencilla guía te sirva de ayuda. Antes te dejo un pequeño consejo que te puede servir de mucha ayuda, sobre todo si eres novicio en estos menesteres.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pro Tip:
&lt;/h3&gt;

&lt;p&gt;Si nuestro proyecto se llama &lt;strong&gt;ACME Project&lt;/strong&gt;, debes basarte en ese nombre para crear las directivas en el archivo de configuración, directorios, etcétera. Estos siempre deben coincidir, así te evitas problemas o configuraciones más complicadas en el futuro.&lt;/p&gt;

&lt;p&gt;En este caso, el dominio sería &lt;code&gt;acme-project.sandbox&lt;/code&gt; y el directorio donde se debe alojar sería &lt;code&gt;/var/www/acme-project.sandbox&lt;/code&gt; y así sucesivamente.&lt;/p&gt;

</description>
      <category>backend</category>
      <category>linux</category>
      <category>ubuntu</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
