403 Forbidden sur nginx/1.4.6 (Ubuntu) - Laravel
Je reçois 403 Forbidden
Mes paramètres:
/etc/nginx/sites-available/default
par défaut
server {
listen 80;
root home/laravel-app/;
index index.php index.html index.htm;
server_name example.com;
location / {
try_files $uri $uri/ /index.html;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
# pass the PHP scripts to FastCGI server listening on the php-fpm socket
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Mise à jour
J'ai suivi les instructions de ce mode : ici
Tous les conseils/suggestions sur ce sera d'une grande aide !
avez-vous installé php5-fpm?
Pouvez-vous aller à travers les journaux d'erreur de nginx et de voir quelle est l'erreur dit-elle lorsque vous recevez le Statut de 500? J'ai un pressentiment votre
Eh bien, vous pouvez essayer de faire
Avez-vous essayé:
Je suis prêt à tout maintenant. Mon site est en cours de chargement maintenant. Cette répondre fonctionne pour moi.
Pouvez-vous aller à travers les journaux d'erreur de nginx et de voir quelle est l'erreur dit-elle lorsque vous recevez le Statut de 500? J'ai un pressentiment votre
sock
fichier peut avoir le mal des autorisations, ce qui entraîne que le statut de 500. C'est soit ça, ou quelque chose dans la configuration de PHP.Eh bien, vous pouvez essayer de faire
chmod 666 (or 777) /var/run/php6-fpm.sock
, redémarrer nginx et essayez de nouveau. Si cela fonctionne, vous devrez peut-être aller dans /etc/php5/fpm/php-fpm.conf
et vérifier la user
et group
ainsi que listen.owner
et listen.group
. Vous devrez peut-être ajouter le compte utilisateur sous lequel nginx
est en cours d'exécution pour la même group
php est en cours d'exécution si vous n'avez pas de questions. Normalement, le php sock
est avec la permission 0660
.Avez-vous essayé:
chown -R www-data:www-data /home/benu/home/forge/ssc-portal
. Ou chmod +x /home/benu/home/forge/ssc-portal/index.php
?Je suis prêt à tout maintenant. Mon site est en cours de chargement maintenant. Cette répondre fonctionne pour moi.
OriginalL'auteur kyo | 2015-10-30
Vous devez vous connecter pour publier un commentaire.
Vous devez spécifier un chemin d'accès absolu pour votre
root
directive. Nginx utilise le répertoire défini au moment de la compilation à l'aide de l'option --prefix commutateur. Par défaut, c'est/usr/local/nginx
.Ce que cela signifie, c'est que votre racine, qui est actuellement fixé à racine
home/laravel-app/
causes nginx pour rechercher les fichiers à/usr/local/nginx/home/laravel-app/
qui sans doute n'est-ce pas l'endroit où vos fichiers sont.Si vous définissez votre
root
directive à un chemin absolu comme/var/www/laravel-app/public/
nginx trouverez les fichiers.De même, vous remarquerez que j'ai ajouté
/public/
pour le chemin d'accès ci-dessus. C'est parce que Laravel magasins c'estindex.php
fichier. Si vous étiez juste à point à/laravel-app/
il n'y a pas de fichier d'index et il voudrais vous donner un 403.php artisan key:generate
à partir de la racine de mon laravel projet. Si vous ne définissez pas laAPP_KEY
variable d'environnement, vous pouvez obtenir erreurs 403, même si votre nginx config est correcte.Après tout éditer le fichier de configuration, n'oubliez pas de recharger le fichier de config de nginx, cette commande dans le terminal: nginx -s de rechargement
OriginalL'auteur Ben Swinburne
vous avez besoin d'avoir une règle pour les fichiers php (dans le fichier par défaut)
J'ai ajouté ton code dans mon
default
fichier. - Je exécutersudo nxginx restart
. J'obtiens toujours le même résultat.OriginalL'auteur ali haider
L'erreur que vous avez ajouté dans votre mise à jour indique que nginx est de tenter un index de répertoire de votre cr-portail de dossier. Puisque vous semblez être à l'aide d'une base de nginx installation, la seule raison qu'un index de répertoire doit échouer ici est de savoir si nginx est impossible de trouver la liste des options sur l'indice.
Dans votre bloc de serveur, vous dites nginx pour essayer les emplacements suivants dans l'ordre lors d'une inscription à l'annuaire est demandée (une URI qui se termine par une barre oblique): index.php, index.html puis index.htm.
Si aucun de ces fichiers n'est trouvé, le répertoire de l'indice de demande échoue.
Ma meilleure supposition est que vous avez votre index.php de fichiers dans le mauvais endroit. Avez-vous le déplacer vers le haut à partir de la ssc-portail de dossier?
OriginalL'auteur Trip