En clair, Apple a juste supprimé la possibilité de le lancer via une interface graphique, et il est toujours possible de le démarrer via la ligne de commande, via un simple sudo apachectl start (respectivement stop pour l'arrêter).

C'est cependant un poil contraignant, car il faut exécuter cette commande à chaque fois que l'on s'authentifie, ou après chaque redémarrage de la machine.

J'ai donc créé le fichier org.apache.httpd.plist dans le répertoire /System/Library/LaunchDaemons en tant que super-administrateur, à l'aide de la commande suivante :

# sudo vi /System/Library/LaunchDaemons/org.apache.httpd.plist

J'y ai ensuite ajouté le code XML suivant :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Disabled</key>
<false/>
<key>Label</key>
<string>org.apache.httpd</string>
<key>EnvironmentVariables</key>
<dict>
<key>XPC_SERVICES_UNAVAILABLE</key>
<string>1</string>
</dict>
<key>ProgramArguments</key>
<array>
<string>/usr/sbin/httpd</string>
<string>-D</string>
<string>FOREGROUND</string>
</array>
<key>OnDemand</key>
<false/>
<key>SHAuthorizationRight</key>
<string>system.preferences</string>
</dict>
</plist>

Il faut ensuite faire appartenir le fichier à root et au group wheel, puis lui attribuer les droits ad hocs, à l'aide des commandes suivantes :

# sudo chown root:wheel /System/Library/LaunchDaemons/org.apache.httpd.plist
# sudo chmod 644 /System/Library/LaunchDaemons/org.apache.httpd.plist

Ainsi, httpd sera automatiquement démarré dès le démarrage de la machine.

itWorks.png

Cependant, si httpd est effecivement lancé, il ne permet pas encore d'accèder au contenu du répertoire Sites de votre répertoire d'accueil, accessible via l'URL http://localhost/~votreNomUtilisateur.

sites.png

Pour cela, il suffit d'exécuter la commande suivante une seule fois :

# sudo echo -e "\nOptions Indexes MultiViews\nAllowOverride All\nOrder allow,deny\nAllow from all\n" > /etc/apache2/users/$USER.conf
# sudo chown root:wheel /etc/apache2/users/$USER.conf
# sudo chmod 644 /etc/apache2/users/$USER.conf

Après un avoir forcé httpd à relire ses fichiers de configuration à l'aide de la commande sudo apachectl graceful, vous devriez pouvoir accèder sans problème au contenu de votre répertoire Sites à l'aide d'un navigateur sans aucun problème.