我有一个 Web 服务器,可以将任何 HTML 404 错误重定向到另一个域:
ErrorDocument 404 https://error domain
我的目标是在 Let's Encrypt 尝试更新证书时避免重定向。
所有 Let's Encrypt 挑战都以以下内容开始:/.well-known/acme-challenge/
我尝试过这个:
ErrorDocument 404 https:// error domain
RewriteEngine on
Redirect "/.well-known/acme-challenge/" "/.well-known/acme-challenge/"
但是我遇到了“重定向过多”的错误(我明白为什么... :/)。重要的是 Let's Encrypt 无需人工干预即可运行,临时修改 vitualhost 是被禁止的,为此我需要当 uri 以以下内容开头时:
/.well-known/acme-challenge/ ... etc
-> 无重定向
/anotherstring/ ect..
-> https://错误域名
我相信这能解决我的问题,因为如果我删除
ErrorDocument 404 https://error domain
然后 Let's Encrypt 更新就可以正常工作了。
答案1
<LocationMatch "!/\.well-known/acme-challenge/">
ErrorDocument 404 https://error.domain
</LocationMatch>