我在 NGiNX 中使用重写的正则表达式时遇到了一些问题。
这是我的配置:
location /wiki/ {
rewrite ^/([^?]*)/([^?]*)(?:\?(.*))? /$1/index.php?title=$2&$3 last;
}
这是主页的 URL://example.com/wiki/en/Main_Page
我有两个问题。
首先,当我访问此 URL 时://example.com/wiki/en
它说页面不存在。有没有办法强制在 URL 末尾的“en”后面添加一个 /?因为如果你转到 //example.com/wiki/en/,末尾有 /
第二个问题:
图像未加载。
以下是 MediaWiki 图像位置的 URL://example.com/wiki/en/skins/common/images/图片名称
那么,如果我的正则表达式试图获取图像,有没有办法忽略 URL?
答案1
location /wiki/ {
rewrite ^/wiki/en$ /wiki/en/;
rewrite ^/([^?]*)/([^?]*)(?:\?(.*))? /$1/index.php?title=$2&$3 last;
}
location /wiki/en/skins/common/images/ {
}