質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Q&A

1回答

3991閲覧

Nginxでサブディレクトリだとサイトが開かない(URLがルートだと開きます)

tomusen2019

総合スコア8

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

0グッド

1クリップ

投稿2019/02/02 14:22

編集2022/01/12 10:55

前提・実現したいこと

nginxのサブディレクトリの設定方法について質問があります。
mysite.com/var/html/のようにURLのサブディレクトリで静的サイトを表示させたいです。

現在の設定だとURLがmysite.comのようにルートだと開くことができるのですが、mysite.com/var/html/のようにサブディレクトリだと404で開きません。
(nginxの設定をlocation / {}にするとmysite.comで開くのですが、設定をlocation /var/html/ {}にするとmysite.com/var/html/で開かないような感じです)

静的サイト(htmlとjsだけで動くもの)をnginxで動かしており、環境はCentOSです。SSL証明書はLet's Encryptで取得しています。

現在のnginxの設定ファイル

※1の部分をlocation / {}にするとmysite.comで開きます。

/var/htmlはあくまで例えのディレクトリです。
実際のディレクトリは/home/以下にあり、権限問題ではありません。

server { listen 80; server_name mysite.com; return 301 https://$host$request_uri; } server { # ポート開放とドメインの設定 listen 443; server_name mysite.com; ssl on; ssl_certificate /xxxxx/fullchain.pem; ssl_certificate_key /xxxxx/privkey.pem; // ※1 location /var/html/ { root /var/html; index index.html; location ~* /public/.+.(?:gif|jpe?g|png)$ { root /var/html; } } }

その他

nginx/1.12.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ログを確認してください。
この設定だと /var/html/var/html/ を見に行くのではないでしょうか?
alias を使うといいと思います。

location /var/html/ { alias /var/html/; (略) }

投稿2019/02/02 15:21

TaichiYanagiya

総合スコア12141

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問