
다음 URL을 다시 작성하는 방법에 대해 고민하고 있습니다.
http://example.com/blog/01-01-01/string
에게
다음 정규식은 문자열과 일치합니다.^blog\/\d*-\d*-\d*\/(.*)
내 nginx 구성 블록은 다음과 같습니다.
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header HOST $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:2368;
proxy_redirect off;
rewrite ^blog\/\d*-\d*-\d*\/(.*) http://example/$1 permanent;
}
그러나 이것은 작동하지 않습니다. 나는 여기서 내가 무엇을 놓치고 있는지 확인하려고 애쓰고 있습니다. 나는 이것에 대한 몇 가지 변형을 시도했지만 막혔습니다. 어떤 도움이라도 대단히 감사하겠습니다.
답변1
다음을 시도해 볼 수 있습니다.
rewrite ^/blog/\d+-\d+-\d+/(.*) /$1 redirect;
또는 동일한 작업을 수행하는 약간 더 효율적인 방법은 다음과 같습니다.
rewrite ^/blog/\d+-\d+-\d+(/.*) $1 redirect;
답변2
노력하다
^/blog/[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]\/[A-Za-z\-]*$
해당 URL이 얼마나 구체적인지에 따라 다릅니다.