XAMPP (Español) - ArchWiki

Jump to content
From ArchWiki
Esta traducción de XAMPP fue revisada el 2020-03-10. Si existen cambios puede actualizarla o avisar al equipo de traducción.

XAMPP[enlace roto 2022-09-23] es una distribución de Apache fácil de instalar que contiene MariaDB, PHP y Perl.
Su contenido completo: Apache, MariaDB, PHP & PEAR, Perl, ProFTPD, phpMyAdmin, OpenSSL, GD, Freetype2, libjpeg, libpng, gdbm, zlib, expat, Sablotron, libxml, Ming, Webalizer, pdf class, ncurses, mod_perl, FreeTDS, gettext, mcrypt, mhash, eAccelerator, SQLite and IMAP C-Client.

## Instalación

### Desde AUR

Instalar xamppAUR.

### Manualmente

Descargue el instalador desde su página oficial.

El archivo descargado es un script de instalación. Hágalo ejecutable y arránquelo escribiendo:

    # chmod +x xampp-linux-version-installer.run
    # ./xampp-linux-version-installer.run

### Eliminación

Asegúrese de detener todos los servicios lampp.

    # /opt/lampp/lampp stop

Todos los archivos que necesita Xampp para su instalación se encuentran en el directorio anterior `/opt/lampp`. Por tanto, para desinstalar Xampp:

    # rm -rf /opt/lampp

Nota: Si ha creado enlaces simbólicos, también deberá eliminarlos.

## Configuración

La configuración de las partes individuales de XAMPP se puede hacer editando los siguientes archivos:

`/opt/lampp/etc/httpd.conf` - Configuración de Apache. Por ejemplo, puede cambiar la carpeta con los archivos fuente de la página web.

`/opt/lampp/etc/php.ini` - Configuración de PHP.

`/opt/lampp/phpmyadmin/config.inc.php` - Configuración de phpMyAdmin.

`/opt/lampp/etc/proftpd.conf` - Configuración de proFTP.

`/opt/lampp/etc/my.cnf` - Configuración de MySQL.

Si desea configurar la seguridad del servidor, puede hacerlo de manera fácil con este comando:

    # /opt/lampp/lampp security

Se le pedirá paso a paso que elija contraseñas para acceder a las páginas web, usuario "pma" para phpMyAdmin, usuario "root" para MySQL y usuario "nobody" para proFTP.

### Autoarranque en boot

Para que se inicie Xampp desde el arranque, cree un servicio systemd para él (`/etc/systemd/system/xampp.service`):

    [Unit]
    Description=XAMPP

    [Service]
    ExecStart=/opt/lampp/lampp start
    ExecStop=/opt/lampp/lampp stop
    Type=forking

    [Install]
    WantedBy=multi-user.target

Habilite `xampp.service`.

## Uso

Utilice los comandos siguientes para controlar XAMPP:

    # /opt/lampp/lampp start,stop,restart

Si le aparece este error cuando lo inicia:

    Starting XAMPP for Linux 1.7.7...
    /opt/lampp/lampp: line 21: netstat: command not found
    /opt/lampp/lampp: line 21: netstat: command not found
    XAMPP: Starting Apache with SSL (and PHP5)...
    /opt/lampp/lampp: line 241: /bin/hostname: No such file or directory
    /opt/lampp/lampp: line 21: netstat: command not found
    XAMPP: Starting MySQL...
    /opt/lampp/bin/mysql.server: line 263: hostname: command not found
    /opt/lampp/lampp: line 21: netstat: command not found
    XAMPP: Starting ProFTPD...
    XAMPP for Linux started.

Instale net-tools y inetutils desde los repositorios oficiales.

## Hospedar archivos fuera del directorio htdocs

El directorio raíz del documento (web root) se encuentra en `/opt/lampp/htdocs/`. Todos los archivos colocados en este directorio serán procesados por el servidor web.

Para alojar otros archivos en su sistema con XAMPP, puede configurar un alias con Apache.

- Edite httpd.conf de Apache con su editor favorito.

    # vim /opt/lampp/etc/httpd.conf

- Find "DocumentRoot", verá algo parecido a:

    DocumentRoot "/opt/lampp/htdocs"
    <Directory "/opt/lampp/htdocs">
        ...
        ...

    </Directory>

- En la siguiente línea después de "</Directory>" pegue esto:

    <Directory "/yourDirectory/">
        Options Indexes FollowSymLinks ExecCGI Includes
        AllowOverride All
        Require all granted
    </Directory>

- Después encuentre el "<IfModule alias_module>":

    <IfModule alias_module>

        #
        # Redirect: Allows you to tell clients about documents that used to
        # exist in your server's namespace, but do not anymore. The client
        # will make a new request for the document at its new location.
        # Example:
        # Redirect permanent /foo http://www.example.com/bar
      ...
    </IfModule>

- Y antes de "</IfModule>" pegue esto:

    Alias /yourAlias /yourDirectory/

- Y ahora no olvide reiniciar Apache:

    # /opt/lampp/lampp restart

Esto le permitirá alojar archivos desde su directorio de inicio (o cualquier otro directorio) con XAMPP.

En el ejemplo anterior, puede acceder a los archivos apuntando su navegador web a localhost/yourAlias.

## Depuración y creación de perfiles con Xdebug y Xampp

Para instrucciones detalladas vaya aquí.

Primero debe descargar las herramientas de desarrollo de Xampp desde la misma página de descarga, aquí[enlace roto 2022-09-23].

Prepare esto en su directorio Xampp:

    # tar xvfz xampp-linux-devel-x.x.x.tar.gz -C /opt

Debería poder ejecutar con éxito

    /opt/lampp/bin/phpize

en su directorio xdebug.

## Error: PhpMyAdmin 403 Access Forbidden

En caso de que su http://localhost/phpmyadmin devuelva "403 Access Forbidden", necesitrá editar la siguiente configuración `/opt/lampp/etc/extra/httpd-xampp.conf`:

    <Directory "/opt/lampp/phpmyadmin">
    	AllowOverride AuthConfig Limit
    	#Order allow,deny
    	#Allow from all
    	Require all granted
    </Directory>

## Seguridad del servidor de prueba local

Apache y MySQL pueden configurarse para que solo escuchen las solicitudes de su propia computadora. Para la mayoría de los sistemas de prueba, esto está bien y reduce en gran medida el riesgo porque los servicios no son accesibles desde Internet.

Antes de iniciar XAMPP por primera vez, busque y edite estos archivos:

Para Apache edite los archivos `/opt/lampp/etc/httpd.conf` y `/opt/lampp/etc/extra/httpd-ssl.conf`. Busque líneas que empiecen por "Listen" tales como

    Listen 80

y reemplácelas con

    Listen 127.0.0.1:80

Para MySQL abra el archivo `/opt/lampp/etc/my.cnf` busque la sección "[mysqld]" y añada esta línea

    bind-address=localhost

Después de iniciar los servicios, verifique el resultado yendo a una ventana de comandos e inicie y ejecute:

    netstat -a -n

Para las entradas marcadas con LISTEN en la última columna, observe la columna Listen. Esta debe comenzar siempre por 127.0.0.1 ó ::1 pero nunca con 0.0.0.0.

Category:

- Web server (Español)

Hidden category:

- Pages with dead links