43 votes

Changer le dossier racine du document Apache vers le disque dur secondaire

J'ai installé la version serveur d'ubuntu 12.04 pour mon PC serveur. J'avais installé le serveur LAMP. J'ai besoin de changer l'emplacement de var/www vers l'emplacement de mon disque dur secondaire. J'ai configuré plusieurs fois dans gedit /etc/apache2/sites-available/default voici mon code

    ServerAdmin webmaster@localhost

    #DocumentRoot /var/www
    DocumentRoot /media/myserver/

        Options FollowSymLinks
        AllowOverride None

    #

        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all

    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/"

        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128

et également utilisé

sudo chown -R var/www /media/myserver/

et

chmod -R 755 /media/myserver/

je n'ai toujours pas pu me connecter à /media/myserver et mon navigateur affiche le message suivant

Interdit

Vous n'avez pas la permission d'accéder à / sur ce serveur.

S'il vous plaît dites à quelqu'un comment monter myserver sur mon var/www, merci d'avance

67voto

Harjot Points 686

Vous devrez modifier apache2.confet 000-default.conf pour changer le répertoire des documents d'apache.

Le serveur Apache est installé sur /var/www/html. C'est le répertoire racine par défaut d'apache.

Changez le répertoire racine d'Apache ou déplacez le projet vers /var/www/html.

  1. Pour changer le répertoire racine d'Apache, exécutez :

     cd /etc/apache2/sites-available
  2. Ensuite, ouvrez le fichier 000-default.conf en utilisant la commande :

     nano 000-default.conf
  3. Modifiez l'option DocumentRoot :

     DocumentRoot /chemin/vers/mon/projet
  4. Ensuite, 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é le répertoire d'apache, suivez ces étapes :

  1. Trouvez le fichier apache2.conf situé dans /etc/apache2 et ouvrez-le en utilisant :

     nano apache2.conf
  2. Utilisez Ctrl+W et recherchez Directory (Il devrait être à la ligne 153)

  3. Il devrait ressembler à cela

         Options Indexes FollowSymLinks
         AllowOverride All
         Require all denied
  4. Changez-le en

         Options Indexes FollowSymLinks Includes ExecCGI
         AllowOverride All
         Require all granted
  5. Redémarrez apache

     sudo service apache2 restart

J'ai créé un script qui modifie la racine d'apache en une seule commande. Vous pouvez le trouver sur mon github.

23voto

onurbekiroglu Points 831

Peut-être un peu tard. Mais quand même..

Vous devriez modifier les autorisations de votre répertoire dans apache.conf sous /etc/apache2

Recherchez ceci

        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted

et ajoutez ce code en dessous, qui donne la permission d'accéder à votre répertoire

            Options Indexes FollowSymLinks
            AllowOverride None
            Require all granted

6voto

Achu Points 20537

Il vous suffit de modifier la racine du document dans votre configuration activée. /etc/apache2/sites-enabled/000-default et ensuite assurez-vous de recharger votre apache.

Alors essayez ceci:

    ServerAdmin webmaster@localhost

    DocumentRoot /media/myserver/

        Options FollowSymLinks
        AllowOverride None

        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all

    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

Ensuite, les autorisations appropriées doivent être données comme ceci:

sudo adduser  www-data
sudo chown -R www-data:www-data /media/myserver/
sudo chmod -R g+rw /media/myserver/

4voto

eatysweaty Points 41
  1. vous modifiez apache2.conf. Remplacez /var/www/ par /votre/chemin:

        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
  2. Modifier le fichier 000-default.conf:

    DocumentRoot /votre/chemin/
  3. Changez la propriété des répertoires à vous-même depuis le gestionnaire de fichiers ou le terminal (par exemple sudo chown pi: chemin). Sans cela, vous obtiendrez ce message d'erreur:

    Vous n'avez pas la permission d'accéder à / sur ce serveur.

2voto

Yahya Tawil Points 121

Comme solution de contournement rapide (sûre et rapide), vous pouvez attribuer le point de montage de votre disque dur externe au répertoire racine par défaut (/var/www par défaut).

Attribuer le point de montage à un répertoire préexistant est sûr, mais le contenu ancien ne peut pas être atteint à moins de démonter le disque.

Pour en savoir plus sur la création d'un point de montage, consultez ce lien.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X