servidors
08/07/2026
Apache, MySQL, PHP i phpMyAdmin a Windows: la meva instal·lació i guia des de zero
Revisió de la meva pila local a Windows (Apache 2.4, PHP 8.2, MySQL 8.4, phpMyAdmin 5.2) i passos per instal·lar-ho des de zero.
Aquest post documenta com tinc configurat el servidor local de desenvolupament a Windows i com ho tornaria a instal·lar des de zero si hagués de muntar un entorn nou.
La meva instal·lació actual
| Component | Versió / ubicació | Notes |
|---|---|---|
| Apache | 2.4.63 (Win64) · C:/Apache24 | Escolta al port 80, DocumentRoot a htdocs |
| PHP | 8.2.29 · C:/PHP | Mòdul php8apache2_4.dll, php.ini a la mateixa carpeta |
| MySQL | 8.4.4 Community · C:/Program Files/MySQL/MySQL Server 8.4 | Servici de Windows, port 3306 |
| phpMyAdmin | 5.2.3 · C:/Apache24/htdocs/phpmyadmin | Accés via http://localhost/phpmyadmin/ |
| Projectes web | C:/Apache24/htdocs | Blog, Laravel, WordPress, eines pròpies |
VirtualHosts locals (.test)
http://localhost/— portal principal i projectes generalshttp://larpreline.test/— Laravel (larpreline/public)http://larposts.test/— Laravel (larposts/public)http://jordikoalitic.test/— WordPress
Els dominis *.test cal afegir-los al fitxer C:\Windows\System32\drivers\etc\hosts.
PHP: extensions i límits rellevants
- Extensions actives:
mysqli,pdo_mysql,curl,gd,mbstring,openssl,zip,intl date.timezone = Europe/Madridmemory_limit = 4096Mupload_max_filesize = 12G·post_max_size = 12Gmax_execution_time = 3600
Apache: fragments clau de configuració
DocumentRoot "C:/Apache24/htdocs"
DirectoryIndex index.php index.html
LoadModule php_module "C:/PHP/php8apache2_4.dll"
AddHandler application/x-httpd-php .php
PHPIniDir "C:/PHP"
Include conf/extra/httpd-vhosts.conf
Instal·lació des de zero (Windows)
1. Apache HTTP Server
- Descarrega Apache Lounge (Win64, VS17) compatible amb el teu Visual C++ Redistributable.
- Descomprimeix a
C:\Apache24. - Edita
conf\httpd.conf: comprovaServerRoot,DocumentRooti el port 80. - Instal·la el servei:
httpd.exe -k install(consola d'administrador). - Arrenca:
httpd.exe -k starto des del servei d'Apache a Windows.
2. PHP
- Descarrega PHP 8.2 Thread Safe (x64) en ZIP.
- Descomprimeix a
C:\PHP. - Copia
php.ini-developmentaphp.inii activa extensions necessàries. - A
httpd.confafegeix el mòdul Apache iPHPIniDir. - Crea
htdocs\info.phpamb<?php phpinfo();per verificar.
3. MySQL Server
- Instal·la MySQL 8.4 amb MySQL Installer (Server + opcional Workbench).
- Configura usuari
rooti contrasenya segura. - Crea un usuari d'aplicació amb permisos només sobre les bases que necessitis.
- Comprova connexió:
mysql -u root -p.
4. phpMyAdmin
- Descarrega phpMyAdmin (ZIP) i descomprimeix a
htdocs\phpmyadmin. - Copia
config.sample.inc.phpaconfig.inc.php. - Defineix
$cfg['blowfish_secret'](cadena aleatòria de 32 bytes). - Configura
$cfg['Servers'][$i]['host'] = 'localhost';i autenticaciócookie. - Obre
http://localhost/phpmyadmin/i inicia sessió.
5. VirtualHosts per a Laravel / projectes
<VirtualHost *:80>
ServerName larpreline.test
DocumentRoot "C:/Apache24/htdocs/larpreline/public"
<Directory "C:/Apache24/htdocs/larpreline/public">
AllowOverride All
Require all granted
DirectoryIndex index.php
</Directory>
</VirtualHost>
Afegir al hosts: 127.0.0.1 larpreline.test
Comprovacions ràpides
- Apache:
http://localhost/carrega sense error 403/500 - PHP:
php -viphpinfo()mostren la mateixa versió que Apache - MySQL: servei en marxa i port 3306 obert localment
- phpMyAdmin: login correcte i llistat de bases de dades
Bones pràctiques
- No exposar phpMyAdmin a internet sense protecció addicional.
- Usar usuaris MySQL dedicats per projecte (no
roota l'app). - Mantenir credencials fora del codi (variables d'entorn o fitxers locals no versionats).
- Revisar logs:
C:\Apache24\logs\error.logi log de MySQL. - Fer còpies de seguretat de bases i de
htdocsabans de canvis grans.
Resum: tinc una pila clàssica LAMP adaptada a Windows, centralitzada a C:\Apache24 i C:\PHP, amb projectes PHP purs i Laravel via VirtualHosts .test. És estable per desenvolupament local i relativament senzilla de replicar seguint els passos anteriors.