Complex url rewriting

Aleksandar Lazic al-nginx at none.at
Mon Nov 23 20:50:33 UTC 2015


Hi.

Am 23-11-2015 18:48, schrieb lmauldinpe15:
> I have a single Nginx installation and I am using PHP-FPM to serve 
> multiple
> PHP applications in sub directories.  Example:
> 
> /var/www/  (this is 'root')
> /var/www/a/foo/index.php
> /var/www/a/bar/index.php
> /var/www/b/bar/index.php
> 
> I want to setup url rewriting so that any request to
> http://xxx/a/foo/index.php/users/login gets redirected to
> http://xxx/a/foo/index.php and similarly
> http://xxx/a/bar/index.php/users/login gets redirected to
> http://xxx/a/bar/index.php
> 
> I may have a large number of applications in the sub directories so I 
> don't
> want to setup individual location blocks for each application.  Can I
> accomplish this with a global rewrite rule?  Please let me know if you 
> need
> more information.

How about to use the map module and some lines of scripting

http://nginx.org/en/docs/http/ngx_http_map_module.html

and use the right command for the location block.

http://nginx.org/en/docs/http/ngx_http_core_module.html#alias
http://nginx.org/en/docs/http/ngx_http_core_module.html#root

Pick a variable of your choice ;-)

http://nginx.org/en/docs/varindex.html
I would suggest

http://nginx.org/en/docs/http/ngx_http_core_module.html#var_request_uri

but that's my opinion.

Do you a favor and use the debug log for debugging ;-)
http://nginx.org/en/docs/debugging_log.html

BR Aleks



More information about the nginx mailing list