我需要转换地址:
www.example.com/TEST -> www.example.com/test
发布于 2012-06-23 23:46:23
是的,您将需要perl。如果您使用的是Ubuntu,而不是apt-get install nginx-full,请使用apt-get install nginx-extras,它将包含嵌入式perl模块。然后,在您的配置文件中:
http {
...
# Include the perl module
perl_modules perl/lib;
...
# Define this function
perl_set $uri_lowercase 'sub {
my $r = shift;
my $uri = $r->uri;
$uri = lc($uri);
return $uri;
}';
...
server {
...
# As your first location entry, tell nginx to rewrite your uri,
# if the path contains uppercase characters
location ~ [A-Z] {
rewrite ^(.*)$ $scheme://$host$uri_lowercase;
}
...
发布于 2015-06-02 05:06:48
location /dupa/ {
set_by_lua $request_uri_low "return ngx.arg[1]:lower()" $request_uri;
rewrite ^ https://$host$request_uri_low;
}
发布于 2011-06-16 18:55:32
我设法使用嵌入式perl实现了这个目标:
location ~ [A-Z] {
perl 'sub { my $r = shift; $r->internal_redirect(lc($r->uri)); }';
}
https://stackoverflow.com/questions/3666003
复制相似问题