Logo LAMP

LAMP + phpMyAdmin en Manjaro Linux

 
 

Índice

  1. Introducción
  2. Instalación y configuración
  3. Configuración de phpMyAdmin

 

  1. Introducción (Volver al índice General)
    En este artículo explicaremos como instalar, a nivel básico, LAMP y phpMyAdmin. LAMP es el acrónimo usado para describir un sistema de infraestructura de Internet que usa las siguientes herramientas:

     
    En nuestro caso usaremos como sistema operativo Manjaro Linux e instalaremos como gestor de bases de datos MariaDB y como lenguaje de programación PHP. Además, instalaremos phpMyAdmin como herramienta gráfica de administración de MariaDB/MySQL para crear, administrar, editar y eliminar bases de datos.

  2.  

  3. Instalación y configuración (Volver al índice General)
    En primer lugar actualizaremos nuestro sistema ejecutando como root el siguiente comando:

    $ sudo pacman -Syu

    A continuación, instalamos los paquetes necesarios:

    $ sudo pacman -S apache php php-apache mariadb phpmyadmin

    El siguiente paso será configurar las distintas aplicaciones instaladas.
     

    • Configuración de Apache (Volver al índice General)

      • Deshabilitar módulo unique_id (Volver al índice General)
        Editamos el archivo /etc/httpd/conf/httpd.conf:

        $ sudo nano /etc/httpd/conf/httpd.conf

        Buscamos la siguiente línea y la comentamos:

        #LoadModule unique_id_module    modules/mod_unique_id.so
      • Habilitar acceso al directorio home del usuario (Volver al índice General)
        Habilitando el directorio público de los usuario /home/$USER/public_html, cada usuario tendrá su URL personal dentro del dominio raíz del sitio, por ejemplo http://www.midominio.com/~usuario. Para habilitarlo, editaremos el archivo /etc/httpd/conf/extra/httpd-userdir.conf:

        $ sudo nano /etc/httpd/conf/extra/httpd-userdir.conf

        Una vez abierto, descomentaremos la línea que contiene UserDir public_html y las directrices para <Directory> deberán quedar como se indica a continuación:

        # Settings for user home directories
        #
        # Required module: mod_authz_core, mod_authz_host, mod_userdir
         
        #
        # UserDir: The name of the directory that is appended onto a user's home
        # directory if a ~user request is received.  Note that you must also set
        # the default access control for these directories, as in the example below.
        #
        UserDir public_html
         
        #
        # Control access to UserDir directories.  The following is an example
        # for a site where these directories are restricted to read-only.
        #
        <directory "/home/*/public_html">
            AllowOverride FileInfo AuthConfig Limit Indexes
            Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
            Require method GET POST OPTIONS
        </directory>

        Una vez modificado y guardado el archvio, nos aseguramos de que Apache accede al directorio /home/usuario/public_html. Para otorgar el acceso os aconsejo hagáis lo siguiente:

        Primero comprobamos que el directorio existe, en caso de no existir, lo creamos:

        $ sudo mkdir /home/usuario/public_html

        Lo siguiente que hacemos es asignar propietario y grupo al directorio public_html, donde usuario es un usuario normal del sistema. Aquí tendrás que sustituir usuario por el usuario al que pertenece el directorio public_html:

        $ sudo chown usuario:usuario /home/usuario/public_html

        Seguimos, otorgando privilegios de lectura, escritura y ejecución al propietario y solo privilegio de ejecución al resto de usuarios al directorio personal /home/usuario:

        $ sudo chmod 701 /home/usuario

        Tras el cambio anterior, si listamos el directorio /home obtendremos algo parecido a esto:

        $ ls -l /home
        total 24
        drwx-----x 47 usuario usuario  4096 abr 26 18:20 usuario

        Para el directorio /home/usuario/public_html haremos lo mismo.

        $ sudo chmod 701 /home/usuario/public_html
      • No olvidar que los archivos contenidos en el directorio public_html deberán tener permiso de lectura para todos los usuarios.
         

      • Habilitar el servicio Apache para que se inicie al arrancar y reiniciar el servicio Apache (Volver al índice General)
        Para habilitar el servicio Apache en el arranque ejecutaremos el siguiente comando:

        $ sudo systemctl enable httpd
        Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.

        Para reiniciar el servicio ejecutaremos el siguiente comando:

        $ sudo systemctl restart httpd

        También podemos comprobar si Apache se está ejecutando o no con el siguiente comando:

        $ sudo systemctl status httpd
        ● httpd.service - Apache Web Server
           Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
           Active: active (running) since Fri 2018-04-27 17:16:49 CEST; 2min 35s ago
         Main PID: 6608 (httpd)
            Tasks: 82 (limit: 4696)
           Memory: 19.2M
           CGroup: /system.slice/httpd.service
                   ├─6608 /usr/bin/httpd -k start -DFOREGROUND
                   ├─6609 /usr/bin/httpd -k start -DFOREGROUND
                   ├─6610 /usr/bin/httpd -k start -DFOREGROUND
                   └─6612 /usr/bin/httpd -k start -DFOREGROUND
         
        abr 27 17:16:49 charlybrown-ml systemd[1]: Started Apache Web Server.
        abr 27 17:16:50 charlybrown-ml httpd[6608]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
      • Probando Apache (Volver al índice General)
        Para probar Apache crearemos dos archivos (páginas de prueba), uno en el directorio raíz por defecto de Apache, en /srv/http y otro en el directorio /home/usuario/public_html.
        En /srv/http crearemos el archivo index.html;

        $ sudo nano /srv/http/index.html

        Y añadiremos las siguientes líneas:

        <!DOCTYPE html>
        <html lang="es"> 
          <head>  
            <title>Test Apache</title>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" $
          </head/>
          <body>
            <h1>Hola mundo</h1>
            Apache está en ejecución
          </body>
        </head></html>

        En el navegador ingresaremos la URL http://localhost y obtendremos el siguiente resultado:
        Test Apache raíz
        Crearemos en /home/usuario/public_html el archivo index.html;

        $ nano /home/usuario/public_html/index.html

        Y añadiremos las siguientes líneas:

        <!DOCTYPE html>
        <html lang="es">
          <head>  
            <title>Home usuario</title>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
          </head>
          <body>
            <h1>Directorio Home del usuario</h1>
            Apache está en ejecución
          </body>
        </html>

        En el navegador ingresaremos la URL http://localhost/~usuario y obtendremos el siguiente resultado:
        Test Apache public_html

    •  

    • Configuración de PHP (Volver al índice General)

      • Comprobar la versión de PHP instalada (Volver al índice General)
        En primer lugar hemos de conocer que versión de PHP tenemos instalada. Para conocerla, ejecutaremos el siguiente comando:

        $ php -version
        PHP 7.2.4 (cli) (built: Mar 28 2018 16:40:43) ( NTS )
        Copyright (c) 1997-2018 The PHP Group
        Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

        En el ejemplo vemos que la versión instalada de PHP es la 7.

      • Configuración para PHP7 (Volver al índice General)
        Para la versión 7 de PHP realizaremos las siguientes configuraciones:

        Primero editamos el archivo de configuración de Apache /etc/httpd/conf/httpd.conf:

        nano /etc/httpd/conf/httpd.conf

        Añadimos debajo de todos los LoadModules la siguiente línea:

        LoadModule php7_module modules/libphp7.so

        A continuación comentamos la siguiente línea:

        #LoadModule mpm_event_module modules/mod_mpm_event.so

        Y debajo de esta insertamos la siguiente línea, en caso de no existir:

        LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

        Este último paso es necesario ya que apache-php no trabaja con mod_mpm_event de Apache (reportado en https://bugs.archlinux.org/task/39218). De no realizarse esta configuración se genera el siguiente error:

        Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe.  You need to recompile PHP.
        AH00013: Pre-configuration failed
        httpd.service: control process exited, code=exited status=1

        En caso de no existir crearemos el siguiente archivo de configuración para PHP7:

        $ sudo nano /etc/httpd/conf/extra/php7_module.conf

        Y añadiremos el siguiente contenido:

        # Required modules: dir_module, php7_module
         
        <ifmodule dir_module>
        	</ifmodule><ifmodule php7_module>
        		DirectoryIndex index.php index.html
        		<filesmatch "\.php$">
        			SetHandler application/x-httpd-php
        		</filesmatch>
        		<filesmatch "\.phps$">
        			SetHandler application/x-httpd-php-source
        		</filesmatch>
        	</ifmodule>

        Volvemos a editar el archivo de configuración de Apache /etc/httpd/conf/httpd.conf:

        $ sudo nano /etc/httpd/conf/httpd.conf

        y al final agregamos las siguientes líneas:

        # Configuración de PHP7
        AddHandler php7-script php
        Include conf/extra/php7_module.conf

        El directorio raíz de Apache por defecto en distribuciones basadas en Arch es /srv/http, esto lo podemos comprobar editando el archivo /etc/php/php.ini:

        $ sudo nano /etc/php/php.ini

        En la línea de open_basedir deberá aparecer el directorio raíz de Apache:

        open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps

        Para finalizar con la configuración de PHP reiniciamos Apache:

        systemctl restart httpd
      • Configuración para PHP5 (Volver al índice General)
        Para la versión 5 de PHP seguiremos los pasos anteriores pero con las siguientes variaciones:

        • Añadimos debajo de todos los LoadModules la siguiente línea:
          LoadModule php5_module modules/libphp5.so
        • En caso de no existir crearemos el siguiente archivo de configuración para PHP5:
          $ sudo nano /etc/httpd/conf/extra/php5_module.conf

          Y añadiremos el siguiente contenido:

          # Required modules: dir_module, php5_module
           
          <ifmodule dir_module>
                  </ifmodule><ifmodule php5_module>
                          DirectoryIndex index.php index.html
                          <filesmatch "\.php$">
                                  SetHandler application/x-httpd-php
                          </filesmatch>
                          <filesmatch "\.phps$">
                                  SetHandler application/x-httpd-php-source
                          </filesmatch>
                  </ifmodule>
        • Volvemos a abrir el archivo de configuración de Apache /etc/httpd/conf/httpd.conf:
          $ sudo nano /etc/httpd/conf/httpd.conf

          y al final agregamos el Include para el archivo de configuración de php5

          # Configuración de PHP 5
          Include conf/extra/php5_module.conf
      • Activar soporte para MariaDB/MySQL (Volver al índice General)
        Haga ésto sólo si quiere activar el soporte para MariaDB/MySQL.
        Editamos el archivo /etc/php/php.ini y descomentamos la siguiente línea (quitando el ;):

        ;extension=mysql.so
        ;extension=mysqli.so
      • Probando PHP (Volver al índice General)
        Crearemos un archivo test.php en el directorio raíz de Apache.

        $ sudo nano /srv/http/test.php

        Agregamos las siguientes líneas al archivo:

        <?php
        phpinfo ();
        ?>

        Reiniciamos el servicio httpd:

        $sudo systemctl restart httpd

        Y finalmente, abrimos el navegador web, introducimos la dirección http://localhost/test.php y tendremos que ver algo parecido a la imagen de abajo:
        Test PHP en Apache

    •  

    • Configuración de MariaDB (MySQL) (Volver al índice General)

      • Configuramos el motor (Volver al índice General)
        Tras instalar MariaDB ejecutaremos el siguiente comando antes de iniciar el servicio MariaDB:

        $ sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
      • Habilitar el servicio MariaDB (Volver al índice General)
        A continuación, ejecutamos el siguiente comando para habilitar el servicio MariaDB:

        $ sudo systemctl enable mysqld
      • Iniciar el servicio MariaDB (Volver al índice General)
        Seguidamente iniciamos el servicio MariaDB:

        $ sudo systemctl start mysqld
      • Verificar ejecución de MariaDB (Volver al índice General)
        Podemos verificar si MariaDB se está ejecutando o no usando el siguiente comando:

        $ sudo systemctl status mysqld

        Obtendremos una salida similar a esta:

        ● mariadb.service - MariaDB 10.1.32 database server
           Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
           Active: active (running) since Tue 2018-05-01 16:59:57 CEST; 2min 43s ago
             Docs: man:mysqld(8)
                   https://mariadb.com/kb/en/library/systemd/
          Process: 1879 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
          Process: 1799 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set-environment _WSREP_START_POSITION=$VAR || ex>
          Process: 1798 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
         Main PID: 1851 (mysqld)
           Status: "Taking your SQL requests now..."
            Tasks: 27 (limit: 4696)
           Memory: 89.3M
           CGroup: /system.slice/mariadb.service
                   └─1851 /usr/bin/mysqld
         
        may 01 16:59:57 charlybrown-ml mysqld[1851]: 2018-05-01 16:59:57 140365690273728 [Note] InnoDB: Highest supported file format is Barracuda.
        may 01 16:59:57 charlybrown-ml mysqld[1851]: 2018-05-01 16:59:57 140365690273728 [Note] InnoDB: 128 rollback segment(s) are active.
        may 01 16:59:57 charlybrown-ml mysqld[1851]: 2018-05-01 16:59:57 140365690273728 [Note] InnoDB: Waiting for purge to start
        may 01 16:59:57 charlybrown-ml mysqld[1851]: 2018-05-01 16:59:57 140365690273728 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.38-83.0 started; log sequence number 1616717
        may 01 16:59:57 charlybrown-ml mysqld[1851]: 2018-05-01 16:59:57 140365070321408 [Note] InnoDB: Dumping buffer pool(s) not yet started
        may 01 16:59:57 charlybrown-ml mysqld[1851]: 2018-05-01 16:59:57 140365690273728 [Note] Plugin 'FEEDBACK' is disabled.
        may 01 16:59:57 charlybrown-ml mysqld[1851]: 2018-05-01 16:59:57 140365690273728 [Note] Server socket created on IP: '::'.
        may 01 16:59:57 charlybrown-ml mysqld[1851]: 2018-05-01 16:59:57 140365690273728 [Note] /usr/bin/mysqld: ready for connections.
        may 01 16:59:57 charlybrown-ml mysqld[1851]: Version: '10.1.32-MariaDB'  socket: '/run/mysqld/mysqld.sock'  port: 3306  MariaDB Server
        may 01 16:59:57 charlybrown-ml systemd[1]: Started MariaDB 10.1.32 database server.
      • Configurar la contraseña de usuario root de MariaDB/MySQL (Volver al índice General)
        Se recomienda configurar una contraseña para el usuario root para acceder al SGBD. Para hacerlo ejecutaremos el siguiente comando:

        $ sudo mysql_secure_installation

        La primera parte de la salida es la siguiente:

        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): 
        OK, successfully used password, moving on...

        Que viene a decir que para iniciar sesión en MariaDB necesitamos la contraseña actual, pero si acabamos de instalar MaríaDB y aún no se ha configurado la contraseña del usuario root, la contraseña estará en blanco, por lo tanto, en este punto presionaremos la tecla intro. Una vez presionada la tecla intro nos indicara que la contraseña utilizada es correcta y pasamos a configurar la nueva contraseña:

        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: 
        Re-enter new password: 
        Password updated successfully!
        Reloading privilege tables..
         ... Success!

        Ya hemos creado la contraseña del root para MariaDB.

      • Eliminar usuario anonimo (Volver al índice General)
        Por defecto en la instalación de MariaDB se crea un usuario anónimo, lo que permite a cualquier persona iniciar sesión en MariaDB sin tener una cuenta de usuario creada para ellos. Su función es para realizar pruebas y la instalación. Debemos eliminarlo antes de pasar a un entorno de producción. Por lo tanto, en este punto decimos que si (Y).

        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!
      • Deshabilitar el inicio de sesión del usuario root de forma remota (Volver al índice General)
        Normalmente el usuario root solo debería poder conectarse desde localhost. Esto asegura que alguien no puede adivinar la contraseña del usuario root de la red. Por ello, en este punto, también decimos que si (Y) a deshabilitar el inicio de sesión del usuario root de forma remota.

        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!
      • Eliminar la base de datos test (Volver al índice General)
        Por defecto, MariaDB viene con una base de datos llamada test que cualquiera puede acceder. Esto también es solo para pruebas y debe eliminarse antes de pasar a un entorno de producción. Volvemos en este punto a decir que si (Y) a la eliminación de la base de datos test.

        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!
      • Recargar las tablas de privilegios (Volver al índice General)
        El proceso termina recargando las tablas de privilegios asegurando que todos los cambios realizados hasta el momento surtirán efecto inmediatamente.
        Volvemos a decir que si (Y) a recargar las tablas de privilegios. Seguidamente hace una limpieza y nos indica que se han completado todos los pasos anteriores y que la instalación ahora es segura.

        Reloading the privilege tables will ensure that all changes made so far will take effect immediately.
        Reload privilege tables now? [Y/n] `## Press Enter`
        ... 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!
         
        MariaDB has been installed and ready to use.
      • Probando MariaDB (Volver al índice General)
        Como aún solo tenemos un usuario, que es el root, estableceremos una conexión con el sistema gestor de bases de datos (SGDB) con el siguiente comando:

        $ mysql -u root -p
        Enter password: 
        Welcome to the MariaDB monitor.  Commands end with ; or \g.
        Your MariaDB connection id is 7
        Server version: 10.1.32-MariaDB MariaDB Server
         
        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)]>

        Como prueba final, pediremos un listado de las bases de datos:

        MariaDB [(none)]> show databases;
        +--------------------+
        | Database           |
        +--------------------+
        | information_schema |
        | mysql              |
        | performance_schema |
        +--------------------+
        3 rows in set (0.00 sec)
         
        MariaDB [(none)]>
      • error no. 2013: Lost Connection to mysql server during query (Volver al índice General)
        Si se obtiene el mensaje «error no. 2013: Lost Connection to mysql server during query» al intentar conectarse a MariaDB mediante TCP/IP, esto es debido al sistema TCP wrappers (tcpd), el cual utiliza el sistema hosts_access(5) para permitir (allow) o denegar (disallow) las conexiones.

        Si se tiene este problema, debemos asegurarnos de agregar lo siguiente en el archivo /etc/hosts.allow:
        Editamos el archivo con el siguiente comando:

        $ sudo nano /etc/hosts.allow

        Y añadimos las siguientes líneas:

        mysqld : ALL : ALLOW
        mysqld-max : ALL : ALLOW

        Y similar para otros daemons de MariaDB/MySQL.

        Nota: Los ejemplos anteriores son un caso simple, diciendole a tcpd que permita todas las conexiones desde cualquier lugar. Podemos utilizar una selección más apropiada de fuentes permitidas en lugar de utilizar el comodín ALL.
        Por ejemplo, si queremos permitir conexiones solo desde localhost y de una red en concreto, por ejemplo zeppelinux.es, la sintaxis sería la siguiente:

        mysqld : localhost,*.zeppelinux.es : ALLOW
        mysqld-max : localhost,*.zeppelinux.es : ALLOW

        Podría también ser necesario editar el archivo /etc/my.cnf:

        $ sudo nano /etc/my.cnf

        Y comentar la siguiente línea como sigue:

        # skip-networking

       

    • Configuración de phpMyAdmin (Volver al índice General)

      • Habilitar el acceso de PHP a /etc/webapps (Volver al índice General)
        PHP necesita tener acceso a /etc/webapps y para ello editamos el archivo php.ini:

        $ sudo nano /etc/php/php.ini

        e insertamos en la linea de open_basedir la ruta:

        open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps
      • Crear el fichero de configuración para phpMyAdmin (Volver al índice General)
        A continuación creamos el fichero de configuración de phpMyAdmin:

        $ sudo nano /etc/httpd/conf/extra/phpmyadmin.conf

        y añadimos las siguientes líneas:

        Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
        <directory "/usr/share/webapps/phpMyAdmin">
            DirectoryIndex index.php
            AllowOverride All
            Options FollowSymlinks
            Require all granted
        </directory>
      • Editar el fichero de configuración de Apache e incluir phpMyAdmin (Volver al índice General)
        Editamos el archivo de configuración de Apache:

        $ sudo nano /etc/httpd/conf/httpd.conf

        y añadimos la siguiente línea al final:

        Include conf/extra/phpmyadmin.conf

        Guardamos y cerramos el archivo y reiniciamos el servicio httpd.

        $ sudo systemctl restart httpd
      • Probando phpMyAdmin (Volver al índice General)
        En el navegador ingresaremos la URL http://localhost/phpmyadmin y obtendremos el siguiente resultado:
        Test Apache phpMyAdmin
Espero que este artículo os haya sido de utilidad. Si pensáis que podéis colaborar para mejorar este artículo, que hay algo erróneo en él o simplemente deseáis comentarlo, por favor, dejad vuestra opinión más abajo.
 
Seguir J. Carlos:

Técnico Informático - Desarrollo Web - Administración de Redes

Técnico Informático. Desarrollo Web. Administración de redes.

Últimas publicaciones de

22 comentarios

  1. duub

    Muchas gracias por este sitio web y todos sus artículos!

    Tengo una curiosidad de este artículo en concreto, como es que se desactiva el modulo unique_id de apache en manjaro pero en el artículo de lamp + debian no se hace.

    Gran trabajo!

    • J. Carlos

      Hola duub,
      En primer lugar gracias por utilizar Zeppelinux y por tu comentario.
      Con respecto al módulo unique_id, te diré que cuando instalé Apache en Manjaro, en todos los tutoriales indicaban la deshabilitación del módulo pero no explicaban porqué. Indagué un poco sobre el tema y encontré que suele habilitarse o mas bien, es imprescindible para ModSecurity que se escapa de este tutorial básico.
      No obstante te mando este enlace sobre el módulo unique_id por si te interesa.
      Por cierto, probé a configurar Apache sin deshabilitar unique_id y también me funcionó.

      Un Saludo

  2. duub

    He encontrado algunos errores en esta guia, te los comento para que puedas corregirlos:
    En este apartado: http://www.zeppelinux.es/lamp-phpmyadmin-en-manjaro-linux/#an_n225 usas el comando «sudo systemctl reiniciar httpd» usando la palabra reiniciar en lugar de restart

    Este apartado también hay que hacerlo en php7: http://www.zeppelinux.es/lamp-phpmyadmin-en-manjaro-linux/#an_n224
    aunque es diferente que en php5, solo he tenido que activar la extension mysqli (sin extensión .so)

    gracias por esta guia!

  3. Abraham

    Seguí todos los pasos y me funciona perfecto. De verdad muchas gracias!

  4. mahen

    http://localhost/~usuario

    ¡Objeto no localizado!

    No se ha localizado la URL solicitada en este servidor. Si usted ha introducido la URL manualmente, por favor revise su ortografía e inténtelo de nuevo.

    Si usted cree que esto es un error del servidor, por favor comuníqueselo al administrador del portal.
    Error 404
    localhost
    Apache/2.4.39 (Unix) PHP/7.3.8

    • J. Carlos

      Hola mahen,
      HTTP 404 No encontrado es un código de estado HTTP que indica que el host ha sido capaz de comunicarse con el servidor, pero no existe el recurso que ha sido pedido.

      1. Comprueba que usuario existe en tu sistema.
      2. Comprueba si tienes creada la carpeta /home/usuario/public_html.
      3. Comprueba los permisos de dicha carpeta para que otros puedan verla y con ello me refiero a toda la ruta. Sigue detenidamente los pasos del artículo, en concreto: Habilitar acceso al directorio home del usuario.
      4. y vuelve a probar el acceso.

      Un Saludo y Gracias por visitar ZeppelinuX

  5. Álvaro

    Excelente. La instalación ha sido un éxito. Probada con Manjaro 20.0 al 2020/05/17.
    Gracias.

  6. Orion

    Buenas Gracias por la Guian todo funciona perfecto a excepciòn de phpMyAdmin me sale
    ¡Acceso prohibido!
    Usted no tiene permiso para acceder al objeto solicitado. El objeto está protegido contra lectura o el servidor no puede leerlo.

    Si usted cree que esto es un error del servidor, por favor comuníqueselo al administrador del portal.

    Error 403

  7. Jesus Gonzalez

    Hola, gracias por tu tutorial. Estoy en proceso de migrar de windows a linux y aún me cuesta trabajo configurar algunas cosas sobre todo java y bases de datos como Postgresql y Mariadb.

    Quiero preguntar algo:
    Al crear la carpeta public_html la cree como usuario normal desde la consola, sin usar sudo ¿Esta bien así? Ya que si la creo con sudo la carpeta se crea en root y no puedo acceder a ella sin contraseña.

    Algo mas ¿Conoces alguna interfaz para mariadb?

    Gracias por tu tiempo.

    • J. Carlos

      Hola Jesus,
      En primer lugar, gracias por visitar ZeppelinuX, y con respecto a la pregunta que haces, en el artículo hay un error y gracias a ti nos hemos dado cuenta. Llegado el paso de crear el directorio public_html, sigue estos pasos. En breve modificaremos el artículo:

      $ sudo mkdir /home/usuario/public_html

      lo siguiente que hacemos es asignar propietario y grupo al directorio public_html, donde usuario es un usuario normal del sistema. Aquí tendrás que sustituir usuario por el usuario al que pertenece el directorio public_html:

      $ sudo chown usuario:usuario /home/usuario/public_html

      Otorgamos privilegios de lectura, escritura y ejecución al propietario y solo privilegio de ejecución al resto de usuarios al directorio personal /home/usuario:

      $ sudo chmod 701 /home/usuario

      y a continuación, cambiamos los permisos para que solo el propietario tenga permisos de ejecución, lectura y escritura y permitimos la ejecución al resto de usuarios:

      $ sudo chmod 701 /home/usuario/public_html

      Sin más un cordial saludo.

    • J. Carlos

      Hola de nuevo Jesus,
      Con respecto a la pregunta de si conozco alguna interfaz para Mariadb, si que las hay, en concreto yo utilizo, además de la consola, phpmyadmin, pero existen otras interfaces gráficas como MySQL Workbench. El problema de esta última es que en las últimas versiones de Debian ya no está en los repositorios oficiales.

      Un saludo

  8. buy cialis online

    Simply want to say your article is as astonishing.

    The clarity in your post is simply nice and i could assume you are an expert on this subject.
    Well with your permission allow me to grab your RSS feed to keep updated with forthcoming post.

    Thanks a million and please continue the enjoyable work.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.