Pourquoi cette entrée d’Apache virtualhost ne fonctionne-t-elle pas?

J’utilise Apache 2.4.6 sur Ubuntu 13.

Dans les sites disponibles, j’ai un fichier de configuration pour mon site qui ne contient que ceci:

 # Admin email, Server Name (domain name), and any aliases ServerAdmin [email protected] ServerName www.ourco.me ServerAlias ourco.me # Index file and Document Root (where the public files are located) DirectoryIndex index.html index.php DocumentRoot /home/ouruser/public/ourco.me/public # Log file locations LogLevel warn ErrorLog /home/ouruser/public/ourco.me/log/error.log CustomLog /home/ouruser/public/ourco.me/log/access.log combined  

Il n’y a pas d’autres fichiers de configuration activés. Lorsque j’utilise apachectl -S pour afficher les sites, cela montre:

 VirtualHost configuration: *:80 is a NameVirtualHost default server www.ourco.me (/etc/apache2/sites-enabled/ourco.me.conf:1) port 80 namevhost www.ourco.me (/etc/apache2/sites-enabled/ourco.me.conf:1) alias ourco.me port 80 namevhost www.ourco.me (/etc/apache2/sites-enabled/ourco.me.conf:1) alias ourco.me ServerRoot: "/etc/apache2" Main DocumentRoot: "/var/www" Main ErrorLog: "/var/log/apache2/error.log" Mutex watchdog-callback: using_defaults Mutex default: dir="/var/lock/apache2" mechanism=fcntl Mutex mpm-accept: using_defaults PidFile: "/var/run/apache2/apache2.pid" Define: DUMP_VHOSTS Define: DUMP_RUN_CFG User: name="www-data" id=33 Group: name="www-data" id=33 

La première chose que je remarque est l’entrée en double pour namevhost www.ourco.me. Et quand je visite le site dans un navigateur, je reçois:

Vous n’êtes pas autorisé à accéder / sur ce serveur.

Serveur Apache / 2.4.6 (Ubuntu) sur www.ourco.me Port 80

Tous les répertoires et fichiers spécifiés dans le fichier de configuration existent. a2ensite et a2dissite fonctionnent comme prévu pour append / supprimer un lien symbolique pour ce fichier à partir des sites activés, de sorte qu’il examine le bon fichier. Est-ce que quelqu’un sait pourquoi ses directives sont ignorées? Merci.

 Put Allow from all  # Admin email, Server Name (domain name), and any aliases ServerAdmin [email protected] ServerName www.ourco.me ServerAlias ourco.me # Index file and Document Root (where the public files are located) DirectoryIndex index.html index.php DocumentRoot /home/ouruser/public/ourco.me/public # Log file locations LogLevel warn ErrorLog /home/ouruser/public/ourco.me/log/error.log CustomLog /home/ouruser/public/ourco.me/log/access.log combined Allow from all  

Cela semble résoudre le problème:

  Require all granted  

lorsqu’il est placé dans l’entrée VirtualHost.

Cet extrait provient de ce post . Je regarde ce document Apache pour voir pourquoi cela fonctionne.