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

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

新規登録して質問してみよう
ただいま回答率
85.49%
Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

nginx

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

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

2回答

4224閲覧

nginxが再起動できなくなってしまった

athlaliel

総合スコア7

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

nginx

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

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2020/10/08 15:24

前提・実現したいこと

nginxの再起動ができるようにしたい。

発生している問題に試した事

railsの投稿アプリで画像アップロードする際に、413 Request Entity Too Largeのエラーが発生したので、本番環境でアップロードできる画像サイズを上昇させようとvimファイルに入りました。

sudo vi /etc/nginx/nginx.conf

server { .... client_max_body_size 5M; # これを追加 .... }

server欄に上記のコードを書き足し、:wqで保存し反映させる為にsudo /etc/init.d/nginx restartを行おうとしました。
nginxを再起動する場合、これまではsudo service nginx startコマンドで再起動を行ってきました。
しかし、

Failed to reload nginx.service: The name org.freedesktop.PolicyKit1 was not provided by any .service files See system logs and 'systemctl status nginx.service' for details.

上記のエラーがまず発生しました。
原因チェックの為に次は下記コマンドを実行しました。

systemctl status nginx.service

結果、下記が出てきました。

Failed to read PID from file /run/ng

権限の不足を疑っているのですが、エラーに次ぐエラーで訳が分からなくなっています。
一度vimdファイルの記述を消してnginxを再起動したり、EC2への再ログインでもnginxの再起動ができません。
アップロードできるファイルを変えるだけのはずが、思わぬ複合エラーに発展してしまい、途方にくれています。

nginxが再起動できない根本的な原因はnginxファイルを書き換えようとしたのが原因なのでしょうか?
また、修正前に戻して尚nginxが再起動できないのは何故なのでしょうか?

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

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

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

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

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

firegrape

2020/10/08 16:18

こういうのが発生したときはとりあえずログです。 /var/log/nginx/error.log この辺の中身を張ってもらえると。
athlaliel

2020/10/08 16:32

失礼しました。 tail -f /var/log/nginx/access.logコマンドがログ確認だったんですね。 ``` tail: `/var/log/nginx/access.log' を 読み込み用に開くことが出来ません: Permission denied tail: ファイルが全く残っていません ``` 上記が出力されました。 やはり権限がおかしいのは分かりました。 編集したらおかしくなってしまい、元に戻してもnginxの再起動はできないままなので、元々権限を変更したわけではない事が余計に混乱の原因になっていますので考え中です。
firegrape

2020/10/08 16:36 編集

sudo tail -f /var/log/nginx/error.log 上のようにsudoを頭につけてみてください。 そして、access.logではなくerror.logです。
athlaliel

2020/10/08 16:40

コマンドありがとうございます。 下記が出力されました。 しかしこれといったエラーメッセージが見つけられず、読み返しております。 106.72.141.224 - - [08/Oct/2020:14:47:46 +0000] "POST /tweets HTTP/1.1" 413 585 "http://54.178.25.236/tweets/new" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36" "-" 106.72.141.224 - - [08/Oct/2020:14:47:47 +0000] "GET /favicon.ico HTTP/1.1" 304 0 "http://54.178.25.236/tweets" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36" "-" 106.72.141.224 - - [08/Oct/2020:14:47:51 +0000] "GET / HTTP/1.1" 200 9163 "http://54.178.25.236/tweets/new" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36" "-" 106.72.141.224 - - [08/Oct/2020:14:47:59 +0000] "GET /?page=2 HTTP/1.1" 200 10265 "http://54.178.25.236/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36" "-" 106.72.141.224 - - [08/Oct/2020:14:48:09 +0000] "POST /tweets/14 HTTP/1.1" 302 87 "http://54.178.25.236/?page=2" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36" "-" 106.72.141.224 - - [08/Oct/2020:14:48:09 +0000] "GET / HTTP/1.1" 200 9174 "http://54.178.25.236/?page=2" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36" "-" 106.72.141.224 - - [08/Oct/2020:14:48:12 +0000] "GET / HTTP/1.1" 200 9099 "http://54.178.25.236/?page=2" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36" "-" 106.72.141.224 - - [08/Oct/2020:14:48:12 +0000] "GET /assets/favicon-46cf573c6184a90483563cdad2eae8e2612d97881f6314deadb5b76303ec397a.ico HTTP/1.1" 200 5667 "http://54.178.25.236/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36" "-" 123.253.126.193 - - [08/Oct/2020:15:05:06 +0000] "GET / HTTP/1.1" 200 8757 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36" "-" 83.97.20.30 - - [08/Oct/2020:15:31:40 +0000] "GET / HTTP/1.0" 200 8757 "-" "-" "-"
firegrape

2020/10/08 16:42

これはerror.logですか?
athlaliel

2020/10/08 16:45

先のコマンドでエラーログと打たれているのですが、仰るようにエラーログのようには思えません。 systemctl status nginx.service 再度こっちのコマンドを打ってみました。 これで出力されるのが下記です。 ● nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled) Active: active (running) since 木 2020-10-08 14:08:33 UTC; 2h 35min ago Process: 3476 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 3473 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 3472 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 3479 (nginx) CGroup: /system.slice/nginx.service ├─3479 nginx: master process /usr/sbin/nginx └─3480 nginx: worker process 10月 08 14:08:33 ip-172-31-45-213.ap-northeast-1.compute.internal systemd[1]: Starting The nginx HTTP and reverse .... 10月 08 14:08:33 ip-172-31-45-213.ap-northeast-1.compute.internal nginx[3473]: nginx: the configuration file /etc/...k 10月 08 14:08:33 ip-172-31-45-213.ap-northeast-1.compute.internal nginx[3473]: nginx: configuration file /etc/ngin...l 10月 08 14:08:33 ip-172-31-45-213.ap-northeast-1.compute.internal systemd[1]: Failed to read PID from file /run/ng...t 10月 08 14:08:33 ip-172-31-45-213.ap-northeast-1.compute.internal systemd[1]: Started The nginx HTTP and reverse p.... Hint: Some lines were ellipsized, use -l to show in full.
athlaliel

2020/10/08 16:47

/var/log/nginx/error.log; このコマンドだと、下記が出力されます。 -bash: /var/log/nginx/error.log: Permission denied
firegrape

2020/10/08 16:50

... sudo tail -f /var/log/nginx/error.log さっきも書いたのですが、上のコマンドをコピペして入力してもらえないでしょうか。
athlaliel

2020/10/08 16:55

ごめんなさい。 先ほどはエラーログでなく、アクセスログを入力していました。 2020/10/08 13:59:22 [error] 3480#0: *9846 connect() to unix:/var/www/PanLove/shared/tmp/sockets/unicorn.sock failed (111: Connection refused) while connecting to upstream, client: 106.72.141.224, server: 54.178.25.236, request: "GET /?page=2 HTTP/1.1", upstream: "http://unix:/var/www/PanLove/shared/tmp/sockets/unicorn.sock:/?page=2", host: "54.178.25.236", referrer: "http://54.178.25.236/" 2020/10/08 14:06:15 [error] 3504#0: *1 connect() to unix:/var/www/PanLove/shared/tmp/sockets/unicorn.sock failed (111: Connection refused) while connecting to upstream, client: 106.72.141.224, server: 54.178.25.236, request: "GET /?page=2 HTTP/1.1", upstream: "http://unix:/var/www/PanLove/shared/tmp/sockets/unicorn.sock:/?page=2", host: "54.178.25.236", referrer: "http://54.178.25.236/" 2020/10/08 14:11:30 [error] 3480#0: *1 client intended to send too large body: 2353795 bytes, client: 106.72.141.224, server: 54.178.25.236, request: "POST /tweets HTTP/1.1", host: "54.178.25.236", referrer: "http://54.178.25.236/tweets/new" 2020/10/08 14:20:26 [error] 3480#0: *14 client intended to send too large body: 2353795 bytes, client: 106.72.141.224, server: 54.178.25.236, request: "POST /tweets HTTP/1.1", host: "54.178.25.236", referrer: "http://54.178.25.236/tweets/new" 2020/10/08 14:36:10 [error] 3480#0: *27 client intended to send too large body: 2353806 bytes, client: 106.72.141.224, server: 54.178.25.236, request: "POST /tweets HTTP/1.1", host: "54.178.25.236", referrer: "http://54.178.25.236/tweets/new" 2020/10/08 14:47:46 [error] 3480#0: *32 client intended to send too large body: 2353796 bytes, client: 106.72.141.224, server: 54.178.25.236, request: "POST /tweets HTTP/1.1", host: "54.178.25.236", referrer: "http://54.178.25.236/tweets/new"
athlaliel

2020/10/08 22:51

firegrape様 URLありがとうございました。 最終的に別なコマンドで解決に至りました。 何度も返信をくださり、ありがとうございました。
guest

回答2

0

上手く行かなかったコマンドでも sudo を付ければ上手く行きました。

bash

1$ sudo systemctl restart nginx

または

bash

1$ sudo service nginx restart

そして、reload は設定ファイルの再読込で再起動とは異なります。

投稿2021/09/21 00:23

MorningMushroom

総合スコア53

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

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

0

自己解決

何度も試していた再起動コマンドが間違っており、入力コマンド履歴を見ていてハッとしました。
下記コマンドを打ったら正常に更新が出来ました。

sudo service nginx reload

投稿2020/10/08 22:54

athlaliel

総合スコア7

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問