J'ai la configuration suivante sur l'un de mes vhosts:
...<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>...
Ce que je veux réaliser, c'est que mod_rewrite ne réécrit pas l'URL lors de l' http://cloud.domain.de/.well-known/acme-challenge/
accès à l'url .
J'ai déjà essayé différentes approches, l'une d'entre elles étant la RewriteRule commentée ci-dessus, mais rien ne semble fonctionner: le serveur la réécrit à https à chaque fois.
Lorsque je désactive la réécriture à des fins de test, je peux très bien accéder à l'URL d'alias ...
Comment puis-je obtenir que l'URL spécifique ne soit pas réécrite?
mod-rewrite
apache-2.4
mod-alias
FleBeling
la source
la source
http://www.server-plant.de/.well-known/acme-challenge/
il est toujours en cours de réécriture. (J'ai appliqué les mêmes règles et conditions de réécriture pour mon sous-domaine www, donc c'est exactement la même chose que le sous-domaine cloud)RewriteCond %{HTTPS} off
n'est pas requis/
? Il n'attraperait donc pas index.html et ainsi de suite?start with /.well-known/acme-challenge/
ce que cela signifie/.well-known/acme-challenge/anything
ne sera pas trop redirigéRewriteOptions InheritDown
depuis Apache 2.4.8.RewriteEngine On
doit encore être présent dans chaque configuration d'hôte virtuel.@mark Version correcte de la variante "plus courte et plus robuste":
la source
IMHO plus court et plus robuste:
vous voudrez peut-être ajouter / acme-challenge / éventuellement, mais si vous souhaitez le déboguer avec un fichier arbitraire, comme ./well-known/test, cette solution fonctionne mieux
que fait-il réellement: regarde si la demande commence par .bien connu, dans ce cas ne fait rien (le sens de -) et en fait la dernière règle [L]
la source