J'essaie de configurer des hôtes virtuels sur Mac OS X. J'ai modifié httpd.conf et redémarré le serveur, mais je n'ai pas eu la moindre chance de le faire fonctionner. De plus, je remarque qu'il ne sert pas les fichiers dans le répertoire DocumentRoot mentionné dans httpd.conf (bibliothèques / serveur Web / documents), mais dans un répertoire différent (/ usr / local / apache2 / htdocs). Je ne vois pas ce dossier mentionné nulle part dans httpd.conf. De plus, PHP fonctionne, mais la ligne "LoadModule php5_module" est commentée. Cela me fait penser qu'il utilise un autre fichier .conf. Comment savoir quelle configuration est en train d'être chargée?
Mise à jour: Je viens de supprimer que httpd.conf et apache se comportent de la même manière après le redémarrage, ils ne l'utilisaient donc pas!
la source
/usr/sbin/httpd -D FOREGROUND -f /Library/Server/Web/Config/apache2/httpd_server_app.conf -D WEBSERVICE_ON
Il y a une autre question serverfault à ce sujet . Si vous utilisez un serveur basé sur Debian, vous pouvez utiliser
apache2ctl
pour déterminer le fichier de configuration utilisé:Plus sur ceci:
Comment savoir quel httpd.conf apache utilise au moment de l'exécution
la source
Essayer
et vous devriez (peut-être) obtenir une sortie comme
De plus, comment redémarrez-vous exactement le serveur? Juste curieux au cas où vous ne liriez pas réellement le fichier de configuration.
la source
-f
drapeau dedansParce que certaines configurations utilisent Server app, brew ou autre, et parce que l'on se glisse dans FTW:
Cette commande effectue les opérations suivantes:
Testé sur Sierra et El Capitan
la source
$
est important (ce n'est pas l'invite de ligne de commande dans ce cas). Si convertit l'instruction en parenthèse en une commande à laquelle nous passons l'-V
indicateur. Le laisser de côté entraîne: "une erreur de syntaxe près du jeton inattendu` -V '".Commencez par vérifier quel est le script de démarrage pour Apache. Pour macOS, ce devrait être / Library / LaunchDaemons. Cela pourrait inclure un répertoire de travail ou des informations similaires.
Vous pouvez également déboguer le processus en cours avec dtruss. Vous pouvez vous connecter au processus en cours en utilisant
dtruss -p <pid>
. Ensuite, si vous le faites HUP, vous pouvez probablement explorer la sortie pour voir où il va récupérer sa configuration. Vous pouvez également démarrer Apache en appelant directement dtruss avecdtruss start_apache_command
.Vous pouvez toujours faire une recherche à l’échelle du système pour httpd.conf avec
find / -name httpd.conf
.la source