Tabla de Contenidos

WAMPSERVER para múltiples versiones de PHP, MySQL y MariaDB

Tiene su complicación instalar el paquete WAMP SERVER para Windows, pero nos permite cambiar fácilmente entre versiones de PHP, MySQL, MariaDB e incluso Apache, convirtiéndolo en un efectivo laboratorio y entorno de desarrollo (en mi caso lo utilizamos diariamente en la oficina con buenos resultados).


Notas sobre 32/64 bits y NTS/TS de WAMPSERVER


Notas de la descarga de WAMP SERVER para Windows


Pasos de la instalación de WAMP SERVER

Descargaremos los paquetes de todo lo necesario y NO instalaremos hasta tener claro cómo proceder.

  1. Necesitaremos uno de los “Installer Wampserver full version”, 32 bits o 64 bits, lo descargamos.

  2. Si hay updates descargaremos ese paquete también (ej. el paquete “full version” es 3.1.4 y hay un update a 3.1.5, bajamos este último)

  3. Podemos bajar todos los prerequisitos, en la sección “Visual C++ Redistributable Packages”, con el enlace All VC Redistributable packages (x86_x64) (32 bits & 64 bits). Instalamos todos, 32 y 64 bits.

  4. En la sección “Tools” descargaremos el paquete con el nombre Checks VC++ packages installed. Este nos dirá si después de instalar todos los prerequisitos, nos falta alguno.
    Tener en cuenta que esta herramienta también se actualiza: si dice que nos falta algo y no cuadra, volverla a descargar para re-comprobar.
    Si todo está OK debería aparecer esto: “All VC++ packages needed to Wampserver are installed correctly”


  5. Ahora podemos instalar el paquete completo de WAMPSERVER, por ejemplo el archivo: wampserver3.1.4_x86.exe

  6. Ahora podemos instalar el paquete de update si lo hay, por ejemplo el archivo: wampserver3_x86_x64_update3.1.5.exe

  7. Y cualquier otro addon que nos interese, por ejemplo MariaDB 10.2 o cualquier otra versión que nos interese de PHP o MySQL.


STRICT SQL mode

Algo inesperado al menos en la versión 5.6 de MySQL con WAMP es que viene por defecto configurado el modo STRICT_ALL_TABLES, que generará errores al intentar realizar INSERTs poco estrictos, por ejemplo al omitir columnas que no tienen correctos valores por defecto y que parece una práctica por mi parte bastante habitual.

Para solucionarlo debemos comentar dicha configuración por defecto en my.ini anteponiendo un ; (punto y coma)

; Set the SQL mode to strict
;sql-mode="STRICT_ALL_TABLES"


En versiones de MariaDB 10.2 y superiores, y relacionado con lo mismo, es importante ajustar también el sql-mode, en mi caso dejo solo la opción: ERROR_FOR_DIVISION_BY_ZERO:

;sql-mode="STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"
sql-mode="ERROR_FOR_DIVISION_BY_ZERO"


Negotiation module

Un comportamiento peculiar o efecto secundario con WAMPSERVER es que debemos recordar comentar la siguiente línea en httpd.conf y reiniciar Apache:

LoadModule negotiation_module modules/mod_negotiation.so

…de lo contrario si se intenta acceder a una URL que no exista del tipo /segmento/segmento2/loquesea ← se intenta cargar un archivo llamado: loquesea.php y en caso de que exista será dicho archivo el que se cargará, como si añadiera la extensión .php.