J'ai beaucoup de mal à configurer cet alias dans nginx pour afficher correctement mon site Web.
Le site Web qui m'intéresse devrait être accessible à partir de mywebsite.com/mr
et est différent du site situé à mywebsite.com/
. Le site Web est situé à /fullpath
(raccourci pour simplifier) Le site doit servir trois types de contenu:
/fullpath/index.html
..html
extension dans le navigateur)./fullpath
et sous-répertoires.J'ai essayé de changer l'ordre des correspondances dans le try_files
et a trouvé des situations où ils travaillaient tous, mais pas en même temps:
location /mr {
default_type "text/html";
alias /fullpath;
# with this one 1 and 3 work
# try_files $uri/index.html $uri.html $uri;
# with this one 2 and 3 work
# try_files $uri $uri.html $uri/index.html;
# with this one 1 and 2 work
try_files $uri.html $uri/index.html $uri;
}
Quand on ne fonctionne pas, c'est 404. Est-ce que quelqu'un sait comment je peux servir correctement toutes sortes de fichiers?
Apparemment alias et try_files ne fonctionnent pas ensemble . Cependant, je ne pense pas que vous ayez besoin d'utiliser un alias.
location /mr {
default_type "text/html";
try_files /fullpath/$uri /fullpath/$uri.html /fullpath/$uri/index.html /fullpath/index.html;
}
Qui essaierait:
Je pense que la directive racine fonctionne avec les fichiers try mais je ne peux pas tester.
server{
location /mr {
root /home/mysite/fullpath;
default_type "text/html";
try_files $uri $uri.html $uri/index.html index.html;
}
}
J'ai utilisé un combo de ce que @Danack a publié qui m'a conduit au résultat que je cherchais (servir le fichier html directement):
location /health-check {
default_type "text/html";
alias /path/to/my/file.html;
}