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

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

ただいまの
回答率

91.35%

  • サーバ

    633questions

    サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

  • nginx

    612questions

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

nginxのドキュメントルートを変更したい

解決済

回答 1

投稿 2017/11/27 20:43 ・編集 2017/11/27 21:37

  • 評価
  • クリップ 0
  • VIEW 71

E3KUROSUKE

score 160

タイトルの通りです。
/etc/nginx/conf.d/default.conf
に設定を書き込むということで、以下のようにしました。

server{
     listen 80;
    server_name localhost;
    location / {
           index index.php;
        root /home/username/example.jp;
    }
}


home/username/example.jp/をドキュメントルートにしたい(中にはindex.htmlがある)のですが、うまくいきません。
Welcome to Nginx のページが表示されます。
nginx -tではエラーは出ていません。

またKUSANAGIでwordpressをインストールして運用していきたいのですが、
KUSANAGIをインストールしており、kusanagi provision htmlのようにするとwordpressのディレクトリを作ってくれるようですが、Nginx側で、そのディレクトリをバーチャルホストで指定しないと接続できないという認識なのですが正しいでしょうか。

まだ空のドメインを持っていないのでバーチャルホストの設定確認はできませんが、サーバーのIPにブラウザで接続したときに、指定のディレクトリのindex.html / index.php を表示したいのですが、どのようにすればできるでしょうか?

至らぬ点はサーバー初心者故、ご容赦ください。

 追記

// nginx.conf

## nginx.conf

user httpd www;
worker_processes  auto;
worker_rlimit_nofile  20000;


error_log /var/log/nginx/error.log warn;
pid       /var/run/nginx.pid;

events {
    worker_connections 4096;
    multi_accept on;
    use epoll;
}

http {
    server_tokens off;
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    charset UTF-8;
    server_names_hash_bucket_size 128;

    log_format main '$request_time $sent_http_x_f_cache $sent_http_x_b_cache '
                    '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '                                     '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log  main;
    client_max_body_size     20M;
    client_body_buffer_size 768k;
    sendfile    on;
    tcp_nopush  on;
    tcp_nodelay on;
    keepalive_timeout 5;
    connection_pool_size 1024;
    request_pool_size 8k;

    gzip on;
    gzip_http_version 1.0;
    gzip_disable "msie6";
    gzip_proxied any;
    gzip_min_length 1024;
    gzip_comp_level 2;
    gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript application/json;

    brotli on;
    brotli_static on;
    brotli_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript application/json;
    brotli_comp_level 3;
    brotli_min_length 1024;

    open_file_cache max=100000 inactive=20s;
    open_file_cache_valid 30s;
    open_file_cache_min_uses 2;
    open_file_cache_errors on;
    fastcgi_cache_path /var/cache/nginx/wordpress levels=1:2 keys_zone=wpcache:30m max_size=512M inactive=600m;
    fastcgi_ignore_headers "Vary" "Cache-Control" "Expires";

    include /etc/nginx/conf.d/*.conf;

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • E3KUROSUKE

    2017/11/27 21:28

    してみました。index.htmlにはHelloworldと書いているのですが、相変わらずNginxのデフォルトページが表示されます。

    キャンセル

  • momf

    2017/11/27 21:34

    nginx.confの掲載はできますか?

    キャンセル

  • E3KUROSUKE

    2017/11/27 21:37

    追記しました。

    キャンセル

回答 1

checkベストアンサー

+1

以下でどうですか?

server{
  listen 80;
  server_name localhost;
  index index.html index.php;
  root /home/username/example.jp;
}

投稿 2017/11/27 21:52

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/11/27 22:10

    だめでした・・・
    サーバーの再起動もしてみましたが相変わらずWelcome to nginx!になってしまいます。
    もっと根本的な問題ということでしょうか・・・

    キャンセル

  • 2017/11/27 22:29

    default.conf以外に設定ファイルはありますか?

    キャンセル

  • 2017/11/27 22:45

    default.conf以外は触っていないですが、conf.dの中には
    _http.conf
    _ssl.conf
    default.conf
    public_html_http.conf
    public_html_ssl.conf
    があります

    キャンセル

  • 2017/11/27 22:48

    どこかにserver_nameとしてのlocalhostがかぶってたりするかもしれません。
    default以外の拡張子を変更してみてdefault.confだけを適用するようにしてみて動作を見てみてください。

    キャンセル

  • 2017/11/27 23:06

    conf.dの中のdefault.conf以外のファイルはすべて.orgをつけてみましたがだめでした。
    表示されているのはどうやら/etc/nginx/html/index.htmlのようでした

    キャンセル

  • 2017/11/27 23:09

    すみません、サービスの再起動をするのを忘れていました。
    再起動したら表示されました!
    今後はdefault.confにバーチャルホストの設定を書き込んでいけばいいのでしょうか。

    キャンセル

  • 2017/11/27 23:12

    やはりほかの設定ファイルで被ってたようですね。
    ご自分でconfを記述していけるならdefaultにどんどん追記していって構わないと思います。
    設定の勉強にもなりますしね。
    やっぱり既存の物に戻したい、追記したいという場合は、defaultを消すなり拡張子を変えるなりして既存の拡張子を元に戻せばいいと思います。

    キャンセル

  • 2017/11/27 23:16

    丁寧な解説、大変助かりました。ありがとうございます。
    kusanagiコマンドのprovisionをするとどうなるのかちょっとまだわからないですが、その時はまた質問したいと思います。
    ちなみに、ほかのファイルではserver_nameがdefault_serverになっていました。

    キャンセル

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

ただいまの回答率

91.35%

関連した質問

同じタグがついた質問を見る

  • サーバ

    633questions

    サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

  • nginx

    612questions

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