I am having troubles with the routes of laravel on a nginx Server. It shows a "404 not found" for all the routes, except for the default one, very similar to this problem: https://stackoverflow.com/questions/21091405/nginx-configuration-for-laravel-4
The solution to that problem:
server { listen 80; server_name sub.domain.com; set $root_path '/srv/www/htdocs/application_name/public'; root $root_path; index index.php index.html index.htm; try_files $uri $uri/ @rewrite; location @rewrite { rewrite ^/(.*)$ /index.php?_url=/$1; } location ~ \.php { fastcgi_pass 127.0.0.1:9000; fastcgi_index /index.php; include /etc/nginx/fastcgi_params; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } location ~* ^/(css|img|js|flv|swf|download)/(.+)$ { root $root_path; } location ~ /\.ht { deny all; } }
it works well, the only problem is that i need the root_path to be /srv/www/htdocs because I have other projects running there to. Whenever i change the line:
set $root_path '/srv/www/htdocs/application_name/public';
to:
set $root_path '/srv/www/htdocs';
the problem starts on url's like: localhost/application_name/public/users