Tenter d’utiliser le lien symbolique pour var / www / html

C’est ce que j’essaie d’accomplir: créer un lien symbolique de var/www/html vers un répertoire du dossier home ( ~ ). Le répertoire vers lequel j’essaie de créer un lien symbolique dans home ( ~ ) est un repository git, si cela fait une différence. J’ai un fichier index.html dans ce répertoire.

J’ai créé un lien symbolique vers var / www / html sur une instance Amazon EC2 à l’aide de cette commande: ln -s ~/dirIWant/ html , mais cela entraîne l’erreur suivante lorsque j’essaie d’accéder à ma page Web: 403 Forbidden "You don't have permission to access / on this server." J’utilise Apache.

Quelqu’un a-t-il essayé de faire quelque chose de similaire et de le faire fonctionner?

Actuellement, lorsque je vais sur mon site Web www.blah.com, il affiche cette erreur 403. J’ai essayé de changer la permission en utilisant sudo chown -h apache:apache mais cela ne semble pas aider. As-tu d’autres idées?

Cela est dû au fait qu’Apache s’exécute en tant qu’utilisateur Apache et que /var/www/html appartient à root dans Amazon Linux AMI. Vous pouvez modifier les droits de propriété / permissions, comme suggéré par Frank, ou utiliser userdirs .

Il me semble que vous voulez que le dossier du serveur Web soit facilement accessible depuis votre répertoire personnel ( ~ ). Je voulais quelque chose comme ça sur mon EC2 et j’ai décidé d’utiliser les répertoires Web par utilisateur ( mod_userdir ).

Cette fonctionnalité vous permet de conserver des parties de l’espace du serveur HTTP dans un répertoire appartenant à un utilisateur. Chaque utilisateur obtient son propre répertoire, situé par défaut dans /home/username/public_html . Les pages, scripts et autres fichiers de ce répertoire sont accessibles à Internet en ajoutant /~username d’ /~username à votre domaine. De plus, vous pouvez changer le nom de ce dossier dans httpd.conf de public_html à autre chose, comme gitRepo . Dans ce cas, si vous avez un fichier index.html dans /home/ec2-user/gitRepo/index.html , il sera accessible au public via http://ec2-hostname.aws.amazon.com/~ec2-user/index.html et être la propriété d’ec2-user, ce qui est pratique pour éditer des fichiers du niveau utilisateur.

Pour configurer cela sur EC2 (en supposant “gitRepo” pour le nom de dossier que vous voulez utiliser), utilisez nano /etc/httpd/conf/httpd.conf pour ouvrir le fichier de configuration Apache et faites défiler jusqu’à . Puis changez cette section pour ressembler à ceci:

  # # UserDir is disabled by default since it can confirm the presence # of a username on the system (depending on home directory # permissions). # UserDir enabled all # # To enable requests to /~user/ to serve the user's public_html # directory, remove the "UserDir disabled" line above, and uncomment # the following line instead: # UserDir gitRepo  

Par la suite, vous devriez être prêt à partir, mais assurez-vous que les permissions sont correctement configurées:

 chmod 711 /home/ec2-user chmod 755 /home/ec2-user/gitRepo chown -R ec2-user /home/ec2-user/gitRepo 

Et enfin, rechargez le serveur Web comme ceci:

 sudo service httpd reload