Apache-Httpd
所有子域都不能請求 Acme-Challenge?
我有 Apache 2.4 和以下站點配置來應對 acme 挑戰:
<IfModule mod_alias.c> Alias /.well-known/acme-challenge /var/www/letsencrypt/challenges/ <Directory "/var/www/letsencrypt/challenges/"> Options -Indexes </Directory> </IfModule> <IfModule mod_rewrite.c> #Redirect before other rewrite rules RewriteCond %{REQUEST_URI} /\.well\-known/acme\-challenge/ RewriteRule (.*) /.well-known/acme-challenge/$1 [L,QSA] </IfModule>
該文件已連結,
sites-enabled
因此000-acme-challenge.conf
它將優先於所有其他文件。它似乎只適用於 PHP 作為 FPM 執行的子/域,而不適用於 GitWeb 作為 CGI 執行的地方。奇怪,例如我的 GitWeb(可公開訪問)被連結為
010-git.conf
應該在 000 之後載入它(對嗎?)。另外,對於某些站點,我收到了速率限制錯誤 429。也許我得在那裡等一段時間。;-)
所有子/域都作為
VirtualHost
btw. 執行,包括 GitWeb。
我有從埠 80 到 443 的永久重定向(使用 LetsEncrypt 證書),當周圍有 HTTPS 版本時,這通常是個好主意。這些重定嚮導致證書不被驗證(當然)。
這個stackoverflow答案(由Cherry)有點幫助我能夠同時重定向並想出了這個:
<IfModule mod_alias.c> <VirtualHost f.haeder.net:80> ServerName f.haeder.net ServerAlias f.haeder.net RedirectMatch permanent ^(?!/.well-known/acme-challenge/).* https://f.haeder.net/ </VirtualHost> </IfModule>
這是我在我的 Friendica 節點上使用的,你可以自己測試,它執行良好。只是為了分享這個小配置。:-)