2015-11-19 3 views
6

Avez-vous regardé les articles précédents ici, mais sans chance. Je viens d'installer Laravel 5.1 via le compositeur. J'ai suivi la documentation officielle pour l'installation, situé here. Je n'utilise pas de propriété familiale et je n'utilise aucun environnement virtuel. Bien que tout fonctionne correctement, j'ai de la difficulté à héberger le projet sur mon serveur Web. Alors que les fichiers PHP standard sont hébergés facilement et sont accessibles via mon localhost, l'accès au dossier public de Laravel via mon localhost me donne une erreur interne de 500 serveurs. Suite au tutoriel, mon fichier public/.htaccess a les contenus suivants.Localhost Erreur avec Laravel 5.1 sur Ubuntu 14.04

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^index.php [L] 

L'entrée la plus récente de mon journal d'erreur est la suivante.

[Thu Nov 19 22:25:10.012710 2015] [core:alert] [pid 6461] [client 127.0.0.1:43086] /var/www/html/blog/public/.htaccess: Options not allowed here

En ce qui concerne les autorisations, j'ai donné des autorisations à tous les fichiers et dossiers dans le dossier de mon Laravel app. Je cours Apache/2.4.7 (Ubuntu) et PHP 5.5.9-1ubuntu4.14 sur ma machine.

S'il vous plaît faites-moi savoir si vous avez besoin d'autres informations. Toute aide sera grandement appréciée!

EDIT:

Résolu le problème en ajoutant ce qui suit dans mon apache2.conf:

<Directory /> 
     AllowOverride All 
</Directory> 

Merci à tous.

Répondre

4

Vous devez avoir manqué une configuration dans votre fichier de configuration. La meilleure façon de tester ceci est de supprimer cette ligne de votre fichier htaccess.

Options +FollowSymLinks 

Ensuite, essayez-le.

Assurez-vous que votre apache2.conf fournit toutes les options. Parfois, vous aurez quelque chose comme ça

AllowOverride FileInfo AuthConfig Limit Indexes 

Si tel est le cas du changement à

AllowOverride All

Edit:

Donc, dans votre fichier .htaccess vous pouvez avoir.

DirectoryIndex index.php 
RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^index.php [L] 
+0

A fait ce que vous avez dit, merci. Mais je reçois toujours la même erreur de serveur interne. Le journal affiche maintenant "[Wed Nov 18 09: 38: 47.808742 2015] [autoindex: erreur] [pid 1747] [client 127.0.0.1:11626] AH01276: Impossible de diffuser le répertoire/var/www/html/blog /: Aucune correspondance DirectoryIndex (index.html, index.cgi, index.pl, index.php, index.xhtml, index.htm) trouvé, et l'index du répertoire généré par le serveur est interdit par la directive Options " –

+2

Ce n'est pas l'erreur ** same **. Cela dit quelque chose de totalement différent. Il semble donc que vous avez résolu le premier problème avec AllowOverride All. Essayez maintenant d'ajouter ce 'DirectoryIndex index.php' en haut de votre fichier .htaccess. –