subdirs without trailing slash
Igor Sysoev
is at rambler-co.ru
Sun Jul 19 15:04:29 MSD 2009
On Sat, Jul 18, 2009 at 11:33:14PM +0100, Dick Middleton wrote:
> I want to make the following equivalent:
>
> http://example.com/mail/index.php
> http://example.com/mail/
> http://example.com/mail
>
> The first two work OK but the last one I can't get to work. With the
> following it gives 404 error in the logs but the browser says "No input
> file specified." :
>
> location ~* ^/(web)?mail/.+\.(jpg|jpeg|gif|css|png|js|ico|html)$ {
> root /var/www;
> }
>
> location ~ ^/(web)?mail {
> root /var/www;
> index index.php;
> fastcgi_index index.php;
> include my_fastcgi_params;
> fastcgi_pass localhost:8888;
> }
>
> I've tried all sorts of variations of this including trying to rewrite the
> full uri in the last case.
>
> The my_fastcgi_params include
>
> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
> fastcgi_param SCRIPT_NAME $fastcgi_script_name;
>
> What is the recommended way to configure this?
If you set
location /mail/ {
fastcgi_pass localhost:8888;
...
}
and request "/mail" then nginx will return external redirect to "/mail/".
If you do not want the redirect, then
location = /mail {
fastcgi_pass localhost:8888;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
fastcgi_param SCRIPT_NAME /index.php;
root /var/www;
}
location /mail/ {
fastcgi_pass localhost:8888;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_index index.php;
root /var/www;
}
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list