簡體   English   中英

來自包含文件的 Nginx 映射模塊正則表達式不起作用

[英]Nginx map module regex from include file not working

我正在嘗試將一些 url 重定向到不同的文檔路徑。 我的配置文件如下

###### /etc/nginx/conf.d/site.conf
 map_hash_max_size 2048; map_hash_bucket_size 128; map $uri $new { include list_4; } resolver 127.0.0.1; server { listen 81; server_name abcexample.com; access_log /var/log/nginx/abcexample-access.log main; error_log /var/log/nginx/abcexample-error.log; location / { if ($new) { rewrite ^ $new redirect; } proxy_pass http://127.0.0.1:8000; } }
########### /etc/nginx/list_4
Location: http://abcdexample.com/news/bbbbb/jjjj111.html 

注意:第 1,2 和 3 行重定向工作正常。 但是第 4 行和第 5 行不起作用。

 root@Hell1:~# curl -I abcexample.com/kkkk/abcef111.html HTTP/1.1 302 Moved Temporarily Server: nginx Date: Tue, 04 Apr 2017 07:08:47 GMT Content-Type: text/html Content-Length: 154 Location: http://abcdexample.com/tttt/bbbbb/jjjj$abc Connection: keep-alive

我的問題是:我必須在 list_4 文件中做哪些更改才能獲得如下結果

Location: http://abcdexample.com/news/bbbbb/jjjj111.html

組合變量和文本僅從 1.11.0 版開始可用。

結果值可以包含文本、變量 (0.9.0) 及其組合 (1.11.0)。

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

nginx 1.11.0 的變化 --- 2016 年 5 月 24 日

*) 特性:“map”指令支持多個變量的組合作為結果值。

http://nginx.org/en/CHANGES

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM