Laravel htaccess
.htaccess, laravel-4, laravel-routing
Solution
This solution worked fine, best solution ever for me. Paste this code into root htaccess. That's all. Leave all other files as they are
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php
</IfModule>
Problem
I've setup a new install of Laravel on my local. It appears there are issues with htaccess or Apache settings. I've researched for a number of hours and tried everything I read. - OSX Lion 10.7.5 - MAMP 3.0.5 - PHP 5.5.10 - mod_rewrite is being loaded. My development server works with other sites. This is the first time I am trying Laravel 4. I get a 403 Forbidden on the welcome page which is located at website.dev:8888/ Apache gives me this error: Directory index forbidden by Options directive Here is my .htaccess file content: ``` <IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews </IfModule> RewriteEngine On # Redirect Trailing Slashes... RewriteRule ^(.*)/$ /$1 [L,R=301] # Handle Front Controller... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] </IfModule> ``` Here are a few additional actions I've taken: - AllowOverride is set to All in httpd.conf - Added virtual host code section to httpd-vhosts.conf - verified that the hosts file contains a line for the site 127.0.0.1 website.dev I've also tried various lines in the htaccess which I found in articles and I also restarted apache each time I made changes to the conf files. No routes work. When I go to website.dev:8888/public I get a blank page, no error. If I go to a route I created such as website.dev:8888/users I get a 404 not found error. Thank you for your help!