Attempt to rewrite using slightly deprecated /foo.php/bar/ methods
Igor Sysoev
is at rambler-co.ru
Mon Oct 26 14:10:42 MSK 2009
On Sun, Oct 25, 2009 at 09:23:02PM -0700, Michael Shadle wrote:
> I have a script which has aliases like /login and such. If the file
> does not exist, it's supposed to go to
>
> /controller.php/login
>
> Where controller.php will look up based on the URI and a whitelist of
> aliases and load the appropriate script. However when I try this:
>
> if (!-e $request_filename) {
> rewrite ^(.+)$ /controller.php/$uri last;
> }
>
> I get an infinite loop.
>
> Is there a way to setup some sort of rewrite (I also tried try_files)
> to make this behavior happen? I tried hacking the controller script
> but I'm worried changing it from URI parsing to a GET argument will
> mess up other internals of the script (it's a third party script)
>
> Thanks... I've done this in Zeus and Apache before but apparently
> never tackled it in nginx yet.
location / {
# damned "if", neutral "error_page", or blessed "try_files" :)
}
location /controller.php {
fastcgi_split_path_info ^(/controller\.php)(.*)$;
...
}
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list