Utilidades para la instalación y actualización de un WAMP:
- Windows
- Apache
- Mysql
- PHP
Este proyecto se basa en la instalación manual de cada componente, automatizando y proveyendo de scripts de ayuda para la mayoría de tareas.
He usado XAMPP durante mas de 10 años, pero al final reemplazaba el Apache, MySQL y PHP que traía de serie con mis propias configuraciones. Esta es la instalación con la que he terminado, basada en las rutas estandar GNU/Linux.
Instalar y mantener un WAMP de esta manera requiere ciertos conocimientos, para usuarios nóveles recomiendo los proyectos XAMPP o WAMP.
- Windows 7 (x64) o superior (7, 8, 8.1, Server 2008R2, Server 2012, Server 2016)
- Visual C++ Redistributable for Visual Studio 2017 x64 instalado
En la documentación usaré c:\wamp
como raíz de la istalación, se puede utilar c:\
sin problemas (yo lo hago así), así como cualquier otra ruta (recomiendo evitar espacios y caractéres especiales).
Las rutas estáns inspiradas en las rutas estándar de GNU/Linux, por lo que si la raíz es c:\wamp
, todos los binarios y configuración se guardarán en c:\wamp\usr
y los datos y logs en c:\wamp\var
La mayoría de scripts usan comandos que requieren permisos administrativos, por lo que es necesario ejecutarlos como administrador.
- Copia la carpeta
usr
del proyecto en la raíz de la instalación:c:\wamp\usr
(por ejemplo) - Ejecuta el script
c:\wamp\usr\wamp-tools\1_php.cmd
- Añade al path global de Windows las rutas indicadas por el script
1_php.cmd
:c:\wamp\usr\bin
c:\wamp\usr\php
c:\wamp\usr\php\ext
- Añade las variables de entorno globales indicadas por el script
1_php.cmd
:PHP_INI_SCAN_DIR
=c:\wamp\usr\etc\php
PHP_PEAR_SYSCONF_DIR
=c:\wamp\usr\pear
MIBDIRS
=c:\wamp\usr\share\mibs
- Ejecuta el script
c:\wamp\usr\wamp-tools\2_apache.cmd
- Ejecuta el script
c:\wamp\usr\wamp-tools\apache_set_paths.cmd
- Edita la configuración para el certificado en
openssl_conf.php
(opcional):- Un nombre para la "organización":
$organizationName = 'Localhost';
- El nombre de la máquina WAMP (el nombre del equipo, hostname):
$commonName = 'wamplocal';
- El nombre del dominio de la red (hostdomain):
$subjectAltName = [$commonName, 'localhost', '*.example.com'];
- Un nombre para la "organización":
- Ejecuta el script
c:\wamp\usr\wamp-tools\makecert.cmd
- Copia el certificado recien creado en
c:\wamp\usr\httpd\conf\ssl.crt\ca.localhost.crt
ac:\wamp\usr\httpd\htdocs\ca.localhost.crt
- Ejecuta
net start Apache2.4
- Ejecuta el script
c:\wamp\usr\wamp-tools\3_mysql.cmd
- Ejecuta
net start MySQL
- Ejecuta el script
c:\wamp\usr\wamp-tools\mysql_timezone_posix.cmd
(opcional) - En los navegadores configura la confianza en el certificado CA generado (
c:\wamp\usr\httpd\conf\ssl.crt\ca.localhost.crt
), puedes hacerlo directamente:http://localhost/ca.localhost.crt
- Edita el archivo
c:\wamp\usr\etc\httpd\vhosts\vhosts.conf
- Añade las siguientes líneas para cada VHost adicional al localhost
Define VHost "example" Define VHostDomain "example.com" Define VHostAdmin webmaster@example.com Define VHostRoot "/var/www/example" Define VHostLog "vhost-${VHost}" Include conf/vhosts/_default_.vhost
- Añade a
c:\Windows\System32\drivers\etc\hosts
líneas adicionales por host127.0.0.1 example example.example.com
- Reinicia el Apache.
Para las funciones de FTP de PHP se necesitan crear un par de reglas en el firewall de windows.
Utiliza c:\wamp\usr\wamp-tools\php_firewall_add.cmd
para crearlas/actualizarlas y c:\wamp\usr\wamp-tools\php_firewall_add.cmd
para eliminarlas.
La creación, modificación y eliminación de reglas del firewall requiren permisos administrativos, por tanto asegurate de usar los scripts anteriores como administrador.
- PHP:
c:\wamp\usr\wamp-tools\1_php.cmd
- Apache:
c:\wamp\usr\wamp-tools\2_apache.cmd
- MySQL:
c:\wamp\usr\wamp-tools\3_mysql.cmd