{"id":6186,"date":"2024-09-22T21:19:26","date_gmt":"2024-09-22T19:19:26","guid":{"rendered":"http:\/\/bestlinuxtutorials.com\/?p=6186"},"modified":"2025-11-14T09:49:30","modified_gmt":"2025-11-14T08:49:30","slug":"instalar-lamp-en-ubuntu-24-04","status":"publish","type":"post","link":"https:\/\/bestlinuxtutorials.com\/es\/instalar-lamp-en-ubuntu-24-04\/","title":{"rendered":"C\u00f3mo instalar LAMP en Ubuntu 24.04"},"content":{"rendered":"<p>En este tutorial aprender\u00e1s a instalar LAMP en Ubuntu 24.04.<\/p>\n\n\n\n<p>LAMP son las siglas de Linux, Apache, Mysql y PHP.<\/p>\n\n\n\n<p>Primero instalar\u00e1s todos los paquetes necesarios y luego configurar\u00e1s cada uno por separado.<\/p>\n\n\n\n<!--more-->\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>\u00cdndice<\/h2><nav><ul><li><a href=\"#installing-lamp-on-ubuntu\">1. Instalar LAMP en Ubuntu<\/a><\/li><li><a href=\"#configuring-apache-on-ubuntu\">2. Configurar Apache en Ubuntu<\/a><ul><li><a href=\"#configure-a-virtual-host-for-your-domain-on-apache\">2.1 Configurar un host virtual para tu dominio en Apache<\/a><\/li><\/ul><\/li><li><a href=\"#configure-the-my-sql-database\">3. Configura la base de datos MySQL<\/a><\/li><li><a href=\"#configure-php\">4. Configura PHP<\/a><\/li><li><a href=\"#test-the-lamp-installation-on-ubuntu\">5. Prueba la instalaci\u00f3n LAMP en Ubuntu<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"installing-lamp-on-ubuntu\">1. Instalar LAMP en Ubuntu<\/h2>\n\n\n\n<p>Primero instalar\u00e1s todos los paquetes necesarios y despu\u00e9s los configurar\u00e1s.<\/p>\n\n\n\n<p>Actualiza y mejora todo<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo apt update\nsudo apt upgrade\n<\/pre><\/div>\n\n\n<p>Instalar Apache2<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo apt install apache2\n<\/pre><\/div>\n\n\n<p>Instalar servidor Mysql<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo apt install mysql-server\n<\/pre><\/div>\n\n\n<p>Instala PHP y algunos paquetes necesarios<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo apt install php php-mysql\n\nsudo apt install php-curl php-cgi\n\nsudo apt install php-gd php-mbstring php-xml php-xmlrpc\n<\/pre><\/div>\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"configuring-apache-on-ubuntu\">2. Configurar Apache en Ubuntu<\/h2>\n\n\n\n<p>Comprueba que apache funciona<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo systemctl status apache2\n<\/pre><\/div>\n\n\n<p>Comprueba la versi\u00f3n de Apache que tienes instalada<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\napache2 -v\n<\/pre><\/div>\n\n\n<p>Abre un navegador y pon tu direcci\u00f3n IP<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nhttp:\/\/your_IP_address\/\n<\/pre><\/div>\n\n\n<p>Si obtienes una p\u00e1gina Apache, entonces est\u00e1s bien.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configure-a-virtual-host-for-your-domain-on-apache\">2.1 Configurar un host virtual para tu dominio en Apache<\/h3>\n\n\n\n<p>Te mostrar\u00e9 c\u00f3mo configurar un host virtual para dominio.com como ejemplo.<\/p>\n\n\n\n<p>Deber\u00edas cambiar ese dominio por el tuyo.<\/p>\n\n\n\n<p>Crea un nuevo archivo con estos contenidos:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: php; title: ; notranslate\" title=\"\">\nsudo vi \/etc\/apache2\/sites-available\/mydomain.com.conf\n\n&lt;Directory \/var\/www\/mydomain.com\/public_html&gt;\n        Require all granted\n&lt;\/Directory&gt;\n&lt;VirtualHost *:80&gt;\n        ServerName mydomain.com\n        ServerAlias www.mydomain.com\n        ServerAdmin webmaster@localhost\n        DocumentRoot \/var\/www\/mydomain.com\/public_html\n\n        ErrorLog \/var\/log\/apache2\/mydomain.com.error.log\n        CustomLog  \/var\/log\/apache2\/mydomain.com.access.log combined\n&lt;\/VirtualHost&gt;\n<\/pre><\/div>\n\n\n<p>Crea el directorio necesario y dale los permisos adecuados<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo mkdir -p \/var\/www\/mydomain.com\/public_html\n\nsudo chown -R www-data:www-data \/var\/www\/mydomain.com\/public_html\n\nsudo chmod -R 755 \/var\/www\/mydomain.com\/public_html\n<\/pre><\/div>\n\n\n<p>Habilita tu dominio y desactiva la configuraci\u00f3n por defecto<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo a2ensite mydomain.com\n\nsudo a2dissite 000-default.conf\n<\/pre><\/div>\n\n\n<p>Abre el archivo.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo vi \/etc\/apache2\/apache2.conf\n<\/pre><\/div>\n\n\n<p>Buscar<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: php; title: ; notranslate\" title=\"\">\n&lt;Directory \/var\/www\/&gt;\n<\/pre><\/div>\n\n\n<p>Y reemplazar<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nAllowOverride None\n<\/pre><\/div>\n\n\n<p>con<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nAllowOverride All\n<\/pre><\/div>\n\n\n<p>Guarda el archivo y sal.<\/p>\n\n\n\n<p>Recarga apache para que los cambios surtan efecto.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo systemctl reload apache2\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"configure-the-my-sql-database\">3. Configura la base de datos MySQL<\/h2>\n\n\n\n<p>Con\u00e9ctate a Mysql con el usuario root y crea una base de datos y un usuario con los permisos necesarios.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo mysql -u root\n\nCREATE DATABASE webdata;\nCREATE USER &#039;webuser&#039; IDENTIFIED BY &#039;password&#039;;\nGRANT ALL ON webdata.* TO &#039;webuser&#039;;\n\nexit\n<\/pre><\/div>\n\n\n<p>Asegura tu instalaci\u00f3n Mysql<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo mysql_secure_installation\n<\/pre><\/div>\n\n\n<p>Escribe Y para todas estas preguntas<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nRemove anonymous users?\nDisallow root login remotely?\nRemove test database and access to it?\nReload privilege tables now?\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"configure-php\">4. Configura PHP<\/h2>\n\n\n\n<p>Para configurar PHP comprueba primero la versi\u00f3n<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nphp -v\n<\/pre><\/div>\n\n\n<p>Edita el archivo php.ini y cambia estos valores<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo vi \/etc\/php\/8.3\/apache2\/php.ini\n\nerror_log = \/var\/log\/php\/error.log\nupload_max_filesize = 200M\n<\/pre><\/div>\n\n\n<p>Crea el directorio para los registros<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo mkdir \/var\/log\/php\nsudo chown www-data \/var\/log\/php\n<\/pre><\/div>\n\n\n<p>Y ahora reinicia apache para que los cambios surtan efecto.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo systemctl restart apache2\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"test-the-lamp-installation-on-ubuntu\">5. Prueba la instalaci\u00f3n LAMP en Ubuntu<\/h2>\n\n\n\n<p>Crea un peque\u00f1o archivo llamado test.php y pon estos contenidos:<\/p>\n\n\n\n<p><\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: xml; title: ; notranslate\" title=\"\">\nsudo vi \/var\/www\/mydomain.com\/public_html\/test.php\n\n&lt;!DOCTYPE html&gt;\n&lt;html lang=&quot;en&quot;&gt;\n&lt;head&gt;\n    &lt;meta charset=&quot;UTF-8&quot;&gt;\n    &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&gt;\n    &lt;title&gt;Database Connection&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;h1&gt;Database Connection Status&lt;\/h1&gt;\n    &lt;p&gt;\n        &lt;?php\n            \/\/ Database connection variables\n            $servername = &quot;localhost&quot;;\n            $username = &quot;webuser&quot;;\n            $password = &quot;password&quot;;\n            $dbname = &quot;webdata&quot;;\n\n            \/\/ Create connection using procedural style\n            $conn = mysqli_connect($servername, $username, $password, $dbname);\n\n            \/\/ Check connection\n            if (!$conn) {\n                echo &quot;Not Connected: &quot; . mysqli_connect_error();\n            } else {\n                echo &quot;Connected Successfully to database: &quot; . $dbname;\n            }\n\n            \/\/ Close the connection\n            mysqli_close($conn);\n        ?&gt;\n    &lt;\/p&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n<\/pre><\/div>\n\n\n<p>Cambia el propietario y el grupo de este archivo<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code\" data-no-translation=\"\"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsudo chown www-data:www-data \/var\/www\/mydomain.com\/public_html\/test.php\n<\/pre><\/div>\n\n\n<p>Abre tu navegador y ve a<\/p>\n\n\n\n<p>http:\/\/mydomain.com\/test.php<\/p>\n\n\n\n<p>Si todo va bien deber\u00edas ver esto en tu navegador:<\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"database-connection-status\">Estado de la conexi\u00f3n a la base de datos<\/h1>\n\n\n\n<p>Conectado correctamente a la base de datos: webdata<\/p>\n\n\n\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>En este tutorial aprender\u00e1s a instalar LAMP en Ubuntu 24.04. LAMP son las siglas de Linux, Apache, Mysql y PHP. Primero instalar\u00e1s todos los paquetes necesarios y luego configurar\u00e1s cada uno por separado.<\/p>","protected":false},"author":1,"featured_media":6200,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[46],"tags":[12,105,115,27],"table_tags":[],"class_list":["post-6186","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ubuntu","tag-apache","tag-lamp","tag-mysql","tag-php"],"_links":{"self":[{"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/posts\/6186","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/comments?post=6186"}],"version-history":[{"count":51,"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/posts\/6186\/revisions"}],"predecessor-version":[{"id":6405,"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/posts\/6186\/revisions\/6405"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/media\/6200"}],"wp:attachment":[{"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/media?parent=6186"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/categories?post=6186"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/tags?post=6186"},{"taxonomy":"table_tags","embeddable":true,"href":"https:\/\/bestlinuxtutorials.com\/es\/wp-json\/wp\/v2\/table_tags?post=6186"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}