Httpd
我在 apache httpd conf 文件中進行了重寫,這破壞了 certbot。有沒有辦法改變它,使它不會?
我在 Apache httpd 中設置了一個子域,它是 Tomcat 伺服器的前端,httpd 伺服器由 Let’s Encrypt 保護。
如果我在 conf 文件中啟動了以下重寫,則 certbot 失敗。
RewriteEngine on RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
如果我將其註釋掉,則 certbot 可以工作。
我不完全確定,但我認為它是 100% 一致的。當然,使用挑戰記憶體,我無法在成功續訂後的整整一個月內獲得另一個有意義的測試結果。
如果我理解正確,您希望將所有非 HTTPS 請求重定向到 HTTPS。所以我猜你的重寫是在一個
<VirtualHost *:80>
容器中,用於非 HTTPS 站點。現在您要添加另一個條件,以不重定向 Lets Encrypt 挑戰。我認為您可能正在使用HTTP-01 挑戰,這意味著您不想將請求重定向到
http://<YOUR_DOMAIN>/.well-known/acme-challenge/<TOKEN>
. 那麼下面的工作嗎?RewriteEngine on RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/ RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,QSA]