私のウェブサイトを正しく表示するために、nginx内でこのエイリアスを設定するのに多くの問題があります。
私が関係しているウェブサイトはmywebsite.com/mr
からアクセスできる必要があり、mywebsite.com/
にあるサイトとは異なります。 Webサイトは/fullpath
にあります(簡略化のために短縮されています)。サイトは3種類のコンテンツを提供する必要があります。
/fullpath/index.html
にあるインデックスファイル。.html
拡張子を表示しない)。/fullpath
およびサブディレクトリにある静的アセット(js/css/img)。私はtry_files
で一致の順序を変更してみましたが、同時にではなく、すべてが機能する状況を見つけました:
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;
}
動作しない場合は404です。私があらゆる種類のファイルを正しく提供する方法を誰かが知っていますか?
どうやらエイリアスとtry_files 一緒に動作しないでください 。ただし、エイリアスを使用する必要はないと思います。
location /mr {
default_type "text/html";
try_files /fullpath/$uri /fullpath/$uri.html /fullpath/$uri/index.html /fullpath/index.html;
}
試してみます:
Rootディレクティブはtryファイルでも機能すると思いますが、テストすることはできません。
server{
location /mr {
root /home/mysite/fullpath;
default_type "text/html";
try_files $uri $uri.html $uri/index.html index.html;
}
}
@Danackが投稿したものを組み合わせて、探していた結果を導きました(htmlファイルを直接提供します)。
location /health-check {
default_type "text/html";
alias /path/to/my/file.html;
}