3.5.2. Apache sur Windows¶
Bugzilla peut être utilisé avec toutes les versions d'Apache 2.2.x et 2.4.x.
3.5.2.1. Installation¶
Téléchargez le serveur Apache HTTP sous forme d'une archive .zip
sur le
site Apache Lounge ou sur le
site Apache Haus.
Décompressez l'archive dans C:\Apache24
. Si vous le faites dans un autre répertoire, vous devrez
alors modifier plusieurs variables dans le fichier httpd.conf
, dont ServerRoot
et DocumentRoot
.
Vous devez maintenant modifier le fichier de configuration d'Apache C:\Apache24\conf\httpd.conf
et suivre les étapes suivantes :
- Supprimez le commentaire devant
LoadModule cgi_module modules/mod_cgi.so
au début du fichier pour activer la prise en charge de CGI. - Supprimez le commentaire devant
AddHandler cgi-script .cgi
pour enregistrer les fichiers.cgi
comme scripts CGI. Pour que ceci focntionne, vous devez créer une clé de registre Windows intituléeHKEY_CLASSES_ROOT\.cgi\Shell\ExecCGI\Command
avec comme valeur par défaut le chemin d'accès complet àperl.exe
avec un paramètre-T
. Par exempleC:\Perl\bin\perl.exe -T
si vous utilisez ActivePerl, ouC:\Strawberry\perl\bin\perl.exe -T
si vous utilisez Strawberry Perl. - Ajoutez un alias et un répertoire pour Bugzilla :
Alias "/bugzilla/" "C:/bugzilla/"
<Directory "C:/bugzilla">
ScriptInterpreterSource Registry-Strict
Options +ExecCGI +FollowSymLinks
DirectoryIndex index.cgi index.html
AllowOverride All
Require all granted
</Directory>
Avertissement
Le bloc ci-dessus est un contrôle d'accès simple qui est correct
pour Apache 2.4. Pour Apache 2.2, remplacez Require all granted
par Allow from all
. Si vous avez d'autres besoins de contrôle d'accès,
vous aurez peut-être besoin d'effectuer d'autres modifications.
Vous pouvez maintenant enregistrer vos modifications et lancer Apache en tant que service. À partir de la ligne de
commande Windows (cmd.exe
) exécutez la commande suivante :
C:\Apache24\bin>httpd.exe -k install
C'est tout ! Bugzilla est maintenant accessible dans votre navigateur à l'adresse http://localhost/bugzilla.
3.5.2.2. Droits d'accès Apache¶
Par défaut, Apache est installé pour s'exécuter avec le compte SYSTEM. Pour des raisons de sécurité, il est préférable de reconfigurer le service pour qu'il s'exécute avec un utilisateur Apache. Pour cela, créer un utilisateur Windows membre d'aucun groupe et reconfigurer le service Apache2 pour qu'il s'exécute avec ce compte.
Quel que soit le compte avec lequel Apache s'exécute, celui a besoin des droits d'écriture et de modification pour les répertoires suivants et leurs sous-répertoires. Selon la version de Windows, ces droits peuvent déjà être donnés.
C:\Bugzilla\data
C:\Apache24\logs
C:\Windows\Temp
Veuillez noter que le répertoire C:\Bugzilla\data
est créé lors du premier lancement du
script checksetup.pl
.
3.5.2.3. Fichiers journaux¶
À moins que vous ne vouliez conserver les statistiques d'accès à votre installation Bugzilla,
il est préférable de désactiver la journalisation en commentant la
directive CustomLog
dans le fichier de configuration d'Apache.
Si vous ne désactiver pas la journalisation, vous devrez au moins désactivez celle des « query strings ». Quand des systèmes externes interagissent avec Bugzilla par l'intermédiaire de webservices (REST/XMLRPC/JSONRPC), ceux-ci incluent les identifiants de l'utilisateur dans l'URL (la « query string »). Par conséquent, pour éviter de stocker les mots de passe en clair sur le serveur, nous recommandons de configurer Apache pour ne pas inclure la chaîne de requête dans ses fichiers journaux.
recherchez la ligne suivante dans le fichier de configuration d'Apache, qui définit le formatage pour
vhost_combined
:LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
Replace
%r
with%m %U
.
(Si vous avez configuré Apache différemment, une ligne différente pour la journalisation pourrait s'appliquer. Ajustez alors ces instructions en conséquence.)
3.5.2.4. Utiliser Apache avec SSL¶
Si vous voulez activer SSL avec Apache, c'est-à-dire accéder à Bugzilla à l'adresse https://localhost/bugzilla, vous devez effectuer les étapes supplémentaires suivantes :
Modifier le fichier
C:\Apache24\conf\httpd.conf
et supprimez les commentaires des lignes suivantes :LoadModule ssl_module modules/mod_ssl.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
Include conf/extra/httpd-ssl.conf
Créez vos fichiers
.key
et.crt
en utilisantopenssl.exe
fourni avec Apache :C:\Apache24\bin>openssl.exe req -x509 -nodes -days 730 -newkey rsa:2048 -keyout server.key -out server.crt
openssl.exe
vous posera quelques questions sur votre localisation et votre société pour remplir les champs du certificat.Une fois la clé privée et le certificat de votre serveur générés, déplacez-les dans
C:\Apache24\conf
pour que leur emplacement corresponde aux variablesSSLCertificateFile
etSSLCertificateKeyFile
définies dansC:\Apache24\conf\extra\httpd-ssl.conf
(que vous n'avez pas besoin de modifier).
Note
Ces opérations créent un certificat auto-signé qui générera des avertissements dans le navigateur lors de la première visite. Si votre Bugzilla a un nom DNS public, vous pouvez obtenir un certificat auprès d'une autorité de certification qui ne présentera pas ce problème.
3.5.2.5. Redémarrer Apache¶
Enfin, redémarrez Apache pour qu'il prenne en compte les modifications, soit à partir de la console des services, soit en ligne de commande :
C:\Apache24\bin>httpd.exe -k restart
Cette documentation contient très probablement des bogues ; si vous en découvrez, veuillez les signaler ici.