https://github.com/fawno/wamp-tools
Tools for install and update an Apache-MySQL-PHP on Windows
https://github.com/fawno/wamp-tools
apache httpd mysql php powershell
Last synced: 11 months ago
JSON representation
Tools for install and update an Apache-MySQL-PHP on Windows
- Host: GitHub
- URL: https://github.com/fawno/wamp-tools
- Owner: fawno
- License: mit
- Created: 2018-08-23T23:03:46.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-12-11T22:32:45.000Z (about 7 years ago)
- Last Synced: 2025-01-16T00:34:20.308Z (about 1 year ago)
- Topics: apache, httpd, mysql, php, powershell
- Language: PHP
- Homepage:
- Size: 4.89 MB
- Stars: 1
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WAMP-Tools
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](https://www.apachefriends.org) 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](https://www.apachefriends.org) o [WAMP](http://www.wampserver.com/en/).
# Requisitos
- Windows 7 (x64) o superior (7, 8, 8.1, Server 2008R2, Server 2012, Server 2016)
- [Visual C++ Redistributable for Visual Studio 2017 x64](https://aka.ms/vs/15/release/VC_redist.x64.exe) instalado
# Instalación
#### Notas iniciales:
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.
### Pasos básicos:
1. Copia la carpeta `usr` del proyecto en la raíz de la instalación: `c:\wamp\usr` (por ejemplo)
2. Ejecuta el script `c:\wamp\usr\wamp-tools\1_php.cmd`
3. 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`
4. 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`
5. Ejecuta el script `c:\wamp\usr\wamp-tools\2_apache.cmd`
6. Ejecuta el script `c:\wamp\usr\wamp-tools\apache_set_paths.cmd`
7. 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'];`
8. Ejecuta el script `c:\wamp\usr\wamp-tools\makecert.cmd`
9. Copia el certificado recien creado en `c:\wamp\usr\httpd\conf\ssl.crt\ca.localhost.crt` a `c:\wamp\usr\httpd\htdocs\ca.localhost.crt`
10. Ejecuta `net start Apache2.4`
11. Ejecuta el script `c:\wamp\usr\wamp-tools\3_mysql.cmd`
12. Ejecuta `net start MySQL`
13. Ejecuta el script `c:\wamp\usr\wamp-tools\mysql_timezone_posix.cmd` (opcional)
14. 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`](http://localhost/ca.localhost.crt)
### VirtualHosts
1. Edita el archivo `c:\wamp\usr\etc\httpd\vhosts\vhosts.conf`
2. 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
```
3. Añade a `c:\Windows\System32\drivers\etc\hosts` líneas adicionales por host
```
127.0.0.1 example example.example.com
```
4. Reinicia el Apache.
### Configurar Firewall para PHP
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.
#### Nota
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.
### Actualizar:
- 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`