Dans le billet précédent je vous ai présenté MacPorts, application qui permet d’installer aisément des logiciels « Open Source ». Voyons maintenant en détail comment installer Apache 2.2.x à l’aide de MacPorts.
Nous considérons que MacPorts est installé et configuré (voir ici dans le cas contraire). Après avoir mis à jour le catalogue, faisons une recherche sur le nom du paquet qui correspond à la version 2.2 d’Apache.
port search apache
Le paquet correspondant à Apache 2.2 est « apache2″.
Pour connaitre toutes les options d’installation, tapons la commande suivante :
port variants apache2
Nous allons installer Apache 2.2 avec ses options d’installation par défaut.
sudo port install apache2
La compilation n’a pas fonctionné du premier coup, « awk » était nécessaire mais non installé :
... checking for mawk... (cached) no checking for gawk... (cached) no checking for nawk... (cached) no checking for awk... (cached) no configure: error: No awk program found Error: The following dependencies failed to build: apr-util sqlite3 readline ncurses ncursesw openssl zlib pcre Error: Status 1 encountered during processing.
Suite à cette erreur, j’ai lancé l’installation de « gawk » (GNU awk) :
sudo port install gawk
puis à nouveau « apache2″.
sudo port clean --all apache2 sudo port install apache2
La compilation d’Apache et de l’ensemble de ses dépendances prend plusieurs minutes.
Utilisez le fichier « exemple » de configuration d’Apache comme fichier de configuration :
cd /opt/local/apache2/conf sudo cp httpd.conf.sample httpd.conf
MacPorts génère un fichier « .plist » pour la prise en charge d’Apache par le système de gestion du démarrage de programme. Le contenu de ce fichier est le suivant :
Label org.macports.apache2 ProgramArguments /opt/local/bin/daemondo --label=apache2 --start-cmd /opt/local/etc/LaunchDaemons/org.macports.apache2/apache2.wrapper start ; --stop-cmd /opt/local/etc/LaunchDaemons/org.macports.apache2/apache2.wrapper stop ; --restart-cmd /opt/local/etc/LaunchDaemons/org.macports.apache2/apache2.wrapper restart ; --pid=none Debug Disabled OnDemand RunAtLoad
Par défaut Apache ne sera pas lancé au démarrage, ni à la demande.
- Si vous souhaitez qu’Apache soit lancé automatiquement au démarrage, tapez la commande suivante :
// Le fichier sera modifié automatiquement en effectuant la manipulation sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist
- Dans le cas contraire, il faudra utiliser manuellement la commande « Launchctl » pour utiliser apache :
// Charger le fichier plist, Apache est lancé sudo launchctl load -F /Library/LaunchDaemons/org.macports.apache2.plist // Arrêter Apache en déchargeant le fichier plist sudo launchctl unload /Library/LaunchDaemons/org.macports.apache2.plist
Une autre façon de faire consiste à créer des Alias dans votre fichier de configuration de Shell. Ajoutez les lignes suivantes dans votre fichier « .profile ».
cd ~ nano .profile // Ajoutez les lignes suivantes alias apache2start='sudo /opt/local/apache2/bin/apachectl -k start' alias apache2stop='sudo /opt/local/apache2/bin/apachectl -k stop' alias apache2restart='sudo /opt/local/apache2/bin/apachectl -k restart' alias apache2ctl='sudo /opt/local/apache2/bin/apachectl'
Vous pourrez ensuite contrôler Apache en tapant les alias :
// Pour lancer Apache apache2start // Pour arrêter Apache apache2stop ...