J'ai suivi ce guide pour configurer Apache sur High Sierra: https://coolestguidesontheplanet.com/get-apache-mysql-php-and-phpmyadmin-working-on-macos-sierra/
Je l'ai utilisé pour l'installer sur Sierra.
Mais quand je vais à http://localhost/~scott/
j'obtiens "Interdit. Vous n'avez pas la permission d'accéder à / ~ scott / sur ce serveur."
Une suggestion sur cette question similaire: localhost / userdir sur macOS High Sierra est de charger des vhosts. Ce que j'ai essayé, mais toujours "Interdit".
Quelque chose a-t-il changé entre Sierra et High Sierra qui empêcherait Apache de travailler avec les dossiers des sites utilisateur?
apache
high-sierra
sfyfedotcom
la source
la source
apachectl configtest
et mettez à jour la sortieSyntax OK
Réponses:
Cela a fonctionné pour moi lorsque j'ai rencontré le même problème.
Veuillez vérifier le fichier "/private/etc/apache2/extra/httpd-userdir.conf".
changement
à
et redémarrez apache.
De: /programming/39631351/apache-localhost-403-forbidden-with-macos-sierra
la source
/private/etc/apache2/extra/httpd-userdir.conf
est déjà non commentée, à partir du lien d'instructions que j'ai suivi.Pour autoriser l'accès au répertoire Sites, vous devez ajouter ce qui suit à
/etc/apache2/httpd.conf
:La configuration par défaut d'Apache est définie sur refusé le /, vous devez donc autoriser explicitement l'accès à tout.
la source
Juste pour approfondir la réponse de Diogo Lima.
Avec la mise à niveau vers High Sierra, Apple a fait des copies de vos paramètres Apache précédents et a ajouté un ~ précédent aux fichiers * .conf dans les dossiers / etc / apache2 et / etc / apache2 / extra. Si vous utilisez des hôtes virtuels ou des hôtes virtuels SSL, vous devrez également déplacer vos versions précédentes pour ces fichiers .conf.
la source
/Library/WebServer/Documents
et enUsers/username/Sites
tant qu'endroits séparés pour les projets Web, car c'est ce que j'ai pu faire sur macOS au cours des 10 dernières années.Après avoir essayé toutes les méthodes ci-dessus, si vous obtenez toujours "interdit" lors de l'accès à localhost, essayez d'ajouter virtualhost dans votre /etc/apache2/extra/httpd-vhosts.conf
Ajouter:
puis redémarrez apache.
https://coolestguidesontheplanet.com/set-up-virtual-hosts-in-apache-on-macos-high-sierra-10-13/
fonctionne bien pour moi
la source
J'étais sur la même situation, apparemment il y a quelques lignes de plus à décommenter dans httpd.conf, les vhosts ne sont pas activés sur High Sierra. - https://apple.stackexchange.com/a/299929/259065
la source
Juste mis à jour ce matin. Utilisation du dossier Sites dans / Users / username.
Sauvegardé et remplacé httpd.conf, httpd-userdir.conf et https-vhosts.conf avec les ~ variantes précédentes.
A couru
sudo apachectl configtest
et obtenu l'erreur PHP (PHP mis à jour à 7 dans High Sierra). Http.conf modifié pour démarrer PHP7 et maintenant tout fonctionne à nouveau.la source
sudo apachectl configtest
Solution possible (après avoir échoué avec toutes les suggestions ci-dessus). Le problème est lié à l'autorisation du répertoire personnel. Il doit être exécutable pour le groupe / autres:
sudo chmod go + x / Utilisateurs / nom d'utilisateur
où "nom d'utilisateur" doit être remplacé par le nom d'utilisateur réel. Après ça, ça marche!
la source
Phew!! Je l'ai compris moi-même.
Suivez ces étapes
Étape 1: ouvrez votre terminal et exécutez cette commande ci-dessous
Et puis commentez la ligne en supprimant le
"#"
signe avantÉtape 2: exécutez la commande suivante mentionnée ci-dessous
Étape 3: Ensuite, allez dans votre
/Library/WebServer/Documents
répertoire et faites unRevenez à votre navigateur Safari et tapez
"http://localhost/yourprojectname"
Vous êtes prêt à partir.
J'utilise MacOS High Sierra 10.13, il a été mis à jour hier matin.
la source
localhost
fuir/Library/WebServer/Documents
fonctionne très bien. Le problème est en courslocalhost/~scott
d' exécution à partir de/Users/Scott/Sites
.J'ai passé toute la matinée à le comprendre, mais finalement ça a marché. J'espère que cela peut être utile à quelqu'un.
J'ai suivi un guide, mais avec un léger changement.
/users/username/Sites/
j'ai ajouté la dernière barre oblique pour que cela fonctionne pour moi.Maintenant, je peux accéder aux dossiers localhost, mais ...
Avant la haute-sierra c'était comme:
http://localhost/~username/smomesite.local
Maintenant, c'est comme:
http://localhost/smomesite.local
Plus
~username
besoin.la source
Users/myname/Sites
répertoire et/Library/WebServer/Documents
Je viens d'avoir ce même problème et je voulais faire exactement ce que vous vouliez (conserver la racine dans / Library / WebServer / Documents, mais aussi autoriser les dossiers des sites utilisateur). Je ne sais pas si cela sera utile, mais après avoir tapé dessus pendant des heures ce soir, en regardant ligne par ligne à travers tous les fichiers .conf, et en me demandant ce qui n'allait pas, j'ai réalisé que le processus httpd n'était pas en mesure de lire mon propre répertoire utilisateur. Pour une raison quelconque, il a été défini sur 750 et l'utilisateur _www ne peut pas le lire. Une fois que j'ai corrigé cela en exécutant "chmod 755". sur mon annuaire d'utilisateurs, le dossier Sites est apparu tout droit.
Je ne sais pas comment mon propre répertoire d'utilisateurs est devenu comme ça, car il semble qu'ils soient par défaut 755 lorsque je crée un nouvel utilisateur. Et j'avais déjà vérifié à plusieurs reprises que mon dossier Sites était réglé sur 755.
la source
J'ai eu le même problème. J'ai commenté les deux lignes ci-dessous (comme déjà suggéré dans une autre réponse)
Mais toujours la même erreur. L'astuce pour moi était de ne pas commenter ces lignes supplémentaires dans le fichier httpd.conf:
J'espère que cela pourra aider.
la source
Il arrive que la mise à jour ait déplacé toute votre configuration précédente vers les fichiers .conf ~ previous. Si vous déplacez /etc/apache2/extra/httpd-userdir.conf~previous vers /etc/apache2/extra/httpd-userdir.conf et /etc/apache2/extra/httpd.conf~previous vers / etc / apache2 / extra / httpd.conf, cela devrait fonctionner comme avant.
la source
J'ai eu le même problème. La résolution a été facile. Voir la réponse publiée ici: https://apple.stackexchange.com/a/306390/129503
la source
Remplacer
à partir d'anciens fichiers ~ précédents.
Vous pourriez obtenir une erreur de module php5 dans httpd.conf, remplacez php5 par php7 et vos sites devraient commencer à fonctionner.
Remplacer
Avec
la source
Je viens de mettre à jour et j'ai eu exactement les mêmes problèmes. Je n'utilise pas de vhosts. La solution pour moi était de garantir:
En
https.conf
commentaireet assurez-vous qu'il
extra/httpd-user.conf
a la ligne:la source