Fichier httpd.conf perdu situé apache [fermé]

510

Comment puis-je trouver l'emplacement de mon httpd.conffichier?

J'utilise un serveur Ubuntu Linux à partir d'Amazon Web Services EC2 (Elastic Compute Cloud) et je ne trouve pas ma configuration Apache.

Shalin Shah
la source
2
Quel système d'exploitation utilisez-vous? Comment avez-vous installé Apache? Quelle version d'Apache utilisez-vous? Ce sont toutes des choses que vous devez inclure lorsque cela est déplacé au bon endroit (probablement SeverFault).
gpojd
63
Cela ne devrait-il pas être migré vers superuser.com au lieu de fermer?
trejder
34
Voici un moyen rapide:find / -name httpd.conf
prograhammer
15
Pour le chapeau rouge, généralement: /etc/httpd/conf/httpd.conf access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/…
danwild
2
Voici un autre moyen rapide:locate httpd.conf
Sudip Bhandari

Réponses:

649

Obtenez le chemin de l'exécution d'Apache

$ ps -ef | grep apache
apache   12846 14590  0 Oct20 ?        00:00:00 /usr/sbin/apache2

Ajouter un -Vargument au chemin

$ /usr/sbin/apache2 -V | grep SERVER_CONFIG_FILE
-D SERVER_CONFIG_FILE="/etc/apache2/apache2.conf"

Référence:
http://commanigy.com/blog/2011/6/8/finding-apache-configuration-file-httpd-conf-location

squiguy
la source
196
Dans certains OS, vous obtiendrez le chemin relatif du fichier conf: -D ​​SERVER_CONFIG_FILE = "apache2.conf" Vous pouvez exécuter "/ usr / sbin / apache2 -V | grep HTTPD_ROOT" pour trouver la racine. Sortie: "-D HTTPD_ROOT =" / etc / apache2 / apache2.conf "Le chemin absolu sera alors:" /etc/apache2/apache2.conf "
Mayank Jaiswal
6
Ne fonctionne pas sur mon hôte partagé car ps ne montre que les tâches s'exécutant en tant que moi. Je devais juste essayer d'exécuter "httpd -V" et "apache2ctl -V" comme le suggère Rich Bower.
John Pankowicz
6
Je suis sur Ubuntu 14.04 avec Apache2 et sudo /usr/sbin/apache2 -V | grep SERVER_CONFIG_FILEme donne quelques erreurs d'avertissement, Invalid Mutex directorydonc la bonne commande que j'ai utilisée estsudo apachectl -V | grep SERVER_CONFIG_FILE
NineCattoRules
4
N'a pas fonctionné pour moi sur Ubuntu 16.04. Il retourne juste le PID de grep.
posfan12
210

Voir http://wiki.apache.org/httpd/DistrosDefaultLayout pour savoir où vous pouvez trouver les fichiers de configuration Apache httpd sur différentes plates-formes, car cela peut varier d'une version à l'autre et d'une plateforme à une autre. Cependant, la réponse la plus courante est soit / etc / apache / conf ou / etc / httpd / conf

De manière générique, vous pouvez déterminer la réponse en exécutant la commande:

httpd -V

(C'est un V majuscule). Ou, sur les systèmes où httpd est renommé, peut-êtreapache2ctl -V

Cela renverra divers détails sur la façon dont httpd est construit et configuré, y compris l'emplacement par défaut du fichier de configuration principal.

L'une des lignes de sortie devrait ressembler à:

-D SERVER_CONFIG_FILE = "conf / httpd.conf"

qui, combiné avec la ligne:

-D HTTPD_ROOT = "/ etc / httpd"

vous donnera un chemin complet vers l'emplacement par défaut du fichier de configuration

Rich Bowen
la source
14
Pour moi, ce qui a fonctionné, c'est la apache2ctl -Vcommande et la recherche du chemin dans ce qui est répertorié après.
jamescampbell
1
oui, apache2ctln'est pas une version renommée de httpd, ce sont des noms différents de la même aplication sur les systèmes d' exploitation Debian et RedHat respectivement
vladkras
5
Je reçois the command httpdn'a pas été trouvé.
Noir
1
Essayez "apachectl -V" si "httpd -V" ne fonctionne pas
Somnath Pawar
2
Sur ubuntu, vous pouvez avoir un fichier apache2.conf et pas un fichier httpd.conf. Vous pouvez trouver le fichier répertorié dans le répertoire / etc / apache2
prasoon