Mam następującą konfigurację na jednym z moich vhostów:
...<VirtualHost *:80>
ServerName cloud.domain.de
ServerAdmin [email protected]
ServerSignature Off
Alias "/.well-known/acme-challenge" "/var/www/domain.de/vh-www/htdocs/public/.well-known/acme-challenge"
<Directory "/var/www/domain.de/vh-www/htdocs/public/.well-known/acme-challenge">
Require all granted
ForceType 'text/plain'
</Directory>
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %(REQUEST_URI) !/\.well\-known/acme\-challenge/?.*
RewriteCond %{HTTPS} off
# RewriteRule ^\.well-known/acme-challenge/([A-Za-z0-9-]+)/?$ - [L]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</ifmodule>...
Chcę osiągnąć to, że mod_rewrite nie przepisuje adresu URL po uzyskaniu http://cloud.domain.de/.well-known/acme-challenge/
dostępu do adresu URL .
Próbowałem już różnych podejść, jednym z nich jest skomentowany przepis RewriteRule powyżej, ale wydaje się, że nic nie działa: serwer przepisuje go do https za każdym razem.
Po wyłączeniu przepisywania na potrzeby testów mogę uzyskać dostęp do aliasu URL w porządku ...
Jak mogę nie przepisać konkretnego adresu URL?
mod-rewrite
apache-2.4
mod-alias
FleBeling
źródło
źródło
http://www.server-plant.de/.well-known/acme-challenge/
wciąż jest przepisywany. (Zastosowałem te same Reguły Przepisywania dla mojej Subdomeny www, więc jest to dokładnie to samo co Subdomeny chmurowej)RewriteCond %{HTTPS} off
nie jest/
? Więc nie przechwyciłby index.html i tak dalej?start with /.well-known/acme-challenge/
tego, co oznacza,/.well-known/acme-challenge/anything
że nie będzie też przekierowywaniaRewriteOptions InheritDown
od Apache 2.4.8.RewriteEngine On
wciąż musi być obecny w każdej konfiguracji hosta wirtualnego.@mark Prawidłowa wersja „krótszego i solidniejszego” wariantu:
źródło
IMHO krótszy i bardziej wytrzymały:
możesz chcieć dodać / acme-challenge / ostatecznie, ale jeśli chcesz debugować go za pomocą dowolnego pliku, takiego jak ./well-known/test, to rozwiązanie działa lepiej
co to właściwie robi: sprawdza, czy żądanie zaczyna się od .well-znane, w tym przypadku nic nie robi (znaczenie -) i czyni go ostatnią regułą [L]
źródło