403 Interdit après modification du répertoire DocumentRoot Apache 2.4.6 [dupliquer]

24

Je viens donc d'installer une machine virtuelle avec Ubuntu 13.10. Je voulais jouer avec Apache 2.4.6 avant de mettre à jour mes serveurs Ubuntu 12.04. Je veux que la racine de mon document soit dans mon dossier personnel et je l'ai donc changé dans le etc/apache2/sites-available/000-default.conf

Quand je l'ai fait, je reçois juste le message interdit. J'ai défini les nouvelles permissions de dossier sur 777 mais je suis toujours interdit. J'ai même mis un fichier index.html dans le nouveau répertoire qui dit juste bonjour tout le monde mais rien. Voici mon fichier 000-default.conf.

<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin [email protected]
DocumentRoot /home/everett/webroot

<Directory /home/everett/webroot>
    Options FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>


# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
    
posée evaldez 01.02.2014 - 05:54
la source

2 réponses

60

J'ai eu exactement le même problème et je l'ai résolu comme suit:

d'abord; J'ai suivi les étapes décrites dans les pages du guide du serveur Ubuntu

.
  1. Accédez au terminal et copiez la configuration d’hôte virtuel par défaut sur un nouveau ( sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/mynewsite.conf )
  2. Modifiez ce nouveau fichier ( sudo gedit /etc/apache2/sites-available/mynewsite.conf ) et remplacez le DocumentRoot par vous-même (enregistrer et fermer ..)
  3. Activer ce nouveau fichier de configuration ( sudo a2ensite mynewsite.conf ) et dissable par défaut ( sudo a2dissite 000-default.conf )
  4. Modifiez apache2.conf ( sudo gedit /etc/apache2/apache2.conf ) et changez la section par défaut en ceci: <Directory [write_your_dir_here]> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> (save and close ..)
  5. Redémarrez Apache2 ( sudo service apache2 restart )

Si ça marche déjà: génial!

Sinon, vous devriez vérifier si chaque <VirtualHost *:80> basé basé sur un nom requiert un ensemble ServerName distinct, y compris 000-default.conf s'il existe. Vous pouvez exécuter apachectl -S dans le terminal pour voir une liste rapide de tout.

Si cela ne fonctionne toujours pas, vous devriez vérifier si votre répertoire (et le chemin complet menant à celui-ci!) a les droits de lecture et d’exécution autorisations (r-x).

  1. Accédez à votre racine ( cd / ) et faites ls -l où vous pouvez voir quelque chose comme drwxr-xr-x 14 root root 4096 mei 1 01:24 [your_directory] .
  2. Tous vos répertoires menant au dossier www doivent avoir les permissions "drwxr-xr-x", sinon vous pouvez le changer en utilisant sudo chmod -R a+rx [your_directory]

Si vous ne parvenez toujours pas à le faire fonctionner, vous devriez vérifier le journal des erreurs apache ( sudo gedit /var/log/apache2/error.log ) et creuser davantage ...

Bonne chance!

    
réponse donnée user276513 01.05.2014 - 04:11
la source
6

Cher je voulais vous informer que vous modifiez votre configuration par défaut d'Apache.

Supprimez ces lignes de votre fichier 000-default.conf.

<Directory /home/everett/webroot>
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Require all granted
</Directory>

Ouvrez votre fichier apache.conf (/etc/apache2/apache.conf) et recherchez le répertoire ou allez à la ligne no. 172. où vous trouvez "répertoire / var / www /" Définissez votre répertoire "/ home / everett / webroot" ici sauvegardez et redémarrez votre apache et rafraîchissez votre page Web.

    
réponse donnée Abdul Kadir 01.02.2014 - 06:04
la source

Lire d'autres questions sur les étiquettes