J'ai installé l'édition du serveur Ubuntu 12.04 pour mon PC serveur. j'avais installé le serveur de lampe. J'ai besoin de changer l'emplacement de var/www en mon emplacement de disque dur secondaire. j'ai été configuré si souvent à gedit/etc/Apache2/sites-available/default voici mon code
<VirtualHost *:80>
ServerAdmin webmaster@localhost
#DocumentRoot /var/www
DocumentRoot /media/myserver/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#<Directory /var/www/>
<Directory /media/myserver/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${Apache_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${Apache_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
et aussi utilisé
Sudo chown -R var/www /media/myserver/
et
chmod -R 755 /media/myserver/
je n’ai toujours pas pu connecter mon/media/myserver et mon navigateur affiche le message suivant
Forbidden
You don't have permission to access / on this server.
S'il vous plaît dites à personne comment monter myserver sur mon var/www, merci d'avance
Vous devrez éditer Apache2.conf
et 000-default.conf
pour changer la racine du document d’Apache.
Le serveur Apache est installé sur var/www/html
. Il s’agit du répertoire racine par défaut d’Apache.
Changez le répertoire racine d’Apache ou déplacez le projet vers /var/www/html
.
Pour changer le répertoire racine d'Apache, exécutez:
cd /etc/Apache2/sites-available
Ouvrez ensuite le fichier 000-default.conf
à l’aide de la commande suivante:
nano 000-default.conf
Editez l’option DocumentRoot
:
DocumentRoot /path/to/my/project
Puis redémarrez le serveur Apache:
Sudo service Apache2 restart
Si vous obtenez Forbidden You don't have permission to access / on this server
après avoir changé la racine d’Apache, procédez comme suit:
Recherchez le Apache2.conf
situé dans /etc/Apache2
et ouvrez-le en utilisant:
nano Apache2.conf
Utilisation Ctrl+W et rechercher un répertoire (il devrait être à la ligne 153)
Ça devrait ressembler à ça
<Directory />
Options Indexes FollowSymLinks
AllowOverride All
Require all denied
</Directory>
Le changer en
<Directory />
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
Redémarrer Apache
Sudo service Apache2 restart
J'ai créé un script qui modifie la racine Apache en une seule commande. Vous pouvez le trouver sur mon github .
Peut-être un peu tard. Mais reste..
Vous devez modifier vos autorisations de répertoire dans Apache.conf sous/etc/Apache2.
Rechercher ceci
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
et ajoutez ce code sous celui-ci, qui donne la permission d'accéder à votre répertoire
<Directory /media/myserver/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Changez simplement la racine du document dans votre configuration activée. /etc/Apache2/sites-enabled/000-default
puis assurez-vous de recharger votre Apache.
Alors essayez avec ceci:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /media/myserver/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /media/myserver/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${Apache_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${Apache_LOG_DIR}/access.log combined
</VirtualHost>
Ensuite, la permission appropriée devrait être donnée comme ceci:
Sudo adduser <username> www-data
Sudo chown -R www-data:www-data /media/myserver/
Sudo chmod -R g+rw /media/myserver/
En guise de solution de contournement rapide (sûre et rapide), vous pouvez associer le point de montage de votre pilote dur externe au répertoire racine par défaut (/ var/www par défaut).
L'affectation du point de montage à un répertoire spécifique est sûre, mais l'ancien contenu ne peut être atteint que si vous avez démonté le pilote.
Pour en savoir plus sur la création d'un point de montage, reportez-vous à this .
Je rencontre aussi le même problème et je pourrais le résoudre!
Ce que tu dois faire c'est
vous modifiez Apache2.conf. Echangez /var/www/
vers votre chemin: <Directory /your/path/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
Modifiez 000-default.conf:
DocumentRoot /your/path/
changez la propriété des répertoires à vous-même depuis le gestionnaire de fichiers ou le terminal (par exemple, Sudo chown pi: path). Sans cela, vous obtiendrez le message "Vous n'êtes pas autorisé à accéder à/sur ce serveur." Message d'erreur.
C'est tout.
Pour ceux qui utilisent les ajouts invités VirtualBox et obtiennent you don't have permission to access /on this server
malgré tout ce qui est mentionné ci-dessus:
Si vous essayez de définir le dossier racine du document Apache sur un dossier partagé de VirtualBox et que vous avez tout essayé ci-dessus et que cela n'a pas aidé, il vous reste une étape.
En bref, la solution consiste à ajouter l'utilisateur 'www-data' au groupe 'vboxsf':
Sudo usermod -a -G vboxsf www-data
Vous ne pouvez pas changer le propriétaire et/ou le groupe du dossier partagé de VirtualBox, mais la solution ci-dessus a bien fonctionné pour moi.
Sudo gedit etc/Apache2/Apache2.conf
ajouter ceci Options Index FollowSymLinks MultiViews AllowOverride Aucun Ordre autoriser, refuser autoriser de tous
en configuration virtuelle: /etc/Apache2/sites-available/site.conf
ServerAdmin [email protected]
ServerName anilrmg.localhost.com
ServerAlias www.anilrmg.localhost.com
DocumentRoot /home/anilrmg/projects/code/anilrmg
Sudo a2dissite 000-default.conf