久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

正則表達式 - nginx 正則,如何匹配不以/結尾且不以.xml .html .htm結尾

瀏覽:144日期:2023-08-16 10:42:14

問題描述

需求

需要一個正則表達式,在 nginx 中使用。如果$uri 不是以/結尾且不以.xml 、.html、.htm 結尾的,才 permanent 到$uri/。

location @rewrite { rewrite [^/]$ $uri/ permanent; rewrite . /index.php?s=$uri&$args last;}嘗試

我自己的寫法,但是失敗:

rewrite ([/]|.xml|.html?)$ $uri/ permanent;提問

1)如何才可以實現(xiàn)不以.xml .html /結尾的才重寫的正則。2)如何才可以在正則表達式[]中排除完整的一段單詞?補充

我使用了這一句,貌似暫時沒有發(fā)現(xiàn)問題。

rewrite [^/|.xml|.html?]$ $uri/ permanent;

疑問,方括號[]中的不是 a-zA-Z0-9 嗎,也可以寫完整的匹配字符串?

問題解答

回答1:

你需要的是 支持 并、交、差 的正則表達式引擎:http://nfabo.cn/p/?p=1280在nginx中,只能用否定反向環(huán)視: .*(?<!.xml|.html|.htm|/)$

回答2:

你可以先把這些.html,.htm,.xml結尾的文件rewrite到他們原來的目錄,剩余的在應用你的重寫規(guī)則就達到了你的這個目的。

標簽: HTML
主站蜘蛛池模板: 广州市| 都昌县| 柞水县| 垦利县| 武邑县| 巴林右旗| 呼和浩特市| 临澧县| 石首市| 巨野县| 阿巴嘎旗| 剑河县| 泰州市| 额敏县| 城口县| 瑞丽市| 高邮市| 汉阴县| 健康| 陆河县| 南宁市| 土默特右旗| 云安县| 封丘县| 桐梓县| 兴业县| 万盛区| 潮州市| 沈丘县| 福州市| 定远县| 信宜市| 邹平县| 通河县| 新竹市| 万宁市| 红桥区| 渝北区| 高碑店市| 赤水市| 二连浩特市|