teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

4

追記 解決

2017/09/26 07:52

投稿

ruby_0ct
ruby_0ct

スコア57

title CHANGED
File without changes
body CHANGED
@@ -159,4 +159,18 @@
159
159
  とパーミッションエラーが出てしまい、ここで詰まっている状況です。
160
160
 
161
161
  - 参考サイト
162
- http://kawatama.net/web/1352
162
+ http://kawatama.net/web/1352
163
+
164
+ ###【解決】追記4 2017/9/26 16:49
165
+ **TaichiYanagiyaさんとay03さん**
166
+ ay03さんのご指摘で気づいたのですが、結論から言いますと、locationのrootをこれまで ```/var/www/html``` としていましたが、 ```/var/www/wordpress``` に設定する必要があり、ここが原因だったことがわかりました。
167
+
168
+ 今回、自作したWebページにブログのページ部分だけをWordPressで管理したくて導入・設定を行っていたのですが、うまくいかず、こちらに質問を投稿しました。
169
+
170
+ 私の認識としましては、ブログページ部分のみに導入されれば良いので、locationのroot設定は ```/var/www/html``` で何ら問題ないという前提で質問したのですが、ay03さんのご指摘で「論理的に考えて確かにそうだな」と思い、色々試してみた結果、locationのrootにたどり着きここが原因だと発覚しました。
171
+
172
+ ただこのままだと、すべてのページがWordPressの支配下に置かれるので、それを避けるべく調べていたところnignxのバーチャルホストで分けることで解決したので、すべての問題が丸く解決しました。
173
+ 根本的なところですみません。
174
+
175
+ ay03さんありがとうございました。
176
+ また、TaichiYanagiyaさんのご回答は非常に勉強になりました。ありがとうございました。

3

追記

2017/09/26 07:52

投稿

ruby_0ct
ruby_0ct

スコア57

title CHANGED
File without changes
body CHANGED
@@ -12,7 +12,7 @@
12
12
  /etc/nginx/nginx.confのserver{}内には以下の内容を記述しました。
13
13
 
14
14
  ```
15
- location ~ \.php$ {
15
+ location ~ .php$ {
16
16
  root /var/www/html;
17
17
  fastcgi_pass 127.0.0.1:9000;
18
18
  fastcgi_index index.php;
@@ -75,7 +75,7 @@
75
75
  ディレクトリを確認するとファイルはあるのですが、ブラウザ上だと見つからないようで、何が原因でしょうか?
76
76
 
77
77
  rootは/var/www/htmlなんですが、上記に書いたfastcgi_paramが間違えていたため、
78
- location ~ \.php$を
78
+ location ~ .php$を
79
79
  ```
80
80
  fastcgi_param SCRIPT_FILENAME /var/www/html/wordpress$document_root$fastcgi_script_name;
81
81
  ```
@@ -92,7 +92,7 @@
92
92
 
93
93
  ###追記2 2017/09/19 00:00
94
94
  ご回答ありがとうございます。
95
- 「__@wordpress は try_files から参照されるもの__」この部分がイマイチわかっていないのですが、```try_files``` はパーマリンクに対応するための記述で、書き方としては ```location ~ \.php$ {}``` の上部部分に
95
+ 「__@wordpress は try_files から参照されるもの__」この部分がイマイチわかっていないのですが、```try_files``` はパーマリンクに対応するための記述で、書き方としては ```location ~ .php$ {}``` の上部部分に
96
96
  ```ここに言語を入力
97
97
  try_files $uri $uri/ /index.php?q=$uri&$args;
98
98
  ```
@@ -106,7 +106,7 @@
106
106
  ```
107
107
  try_files $uri $uri/ /index.php?q=$uri&$args;
108
108
 
109
- location ~ \.php$ {
109
+ location ~ .php$ {
110
110
  root /var/www/html;
111
111
  fastcgi_pass 127.0.0.1:9000;
112
112
  fastcgi_index index.php;
@@ -122,4 +122,41 @@
122
122
  ```
123
123
 
124
124
  しかし、File not foundで繋がりません。
125
- nginxのエラーは以前と一緒です。
125
+ nginxのエラーは以前と一緒です。
126
+
127
+ ###追記3 2017/09/24 13:49
128
+ **TaichiYanagiyaさん**
129
+ WordPressのインストール場所は、/var/www/wordpressです。
130
+ ひとまず、/etc/nginx/nginx.confの設定のしなおしを行いました。
131
+
132
+ ```
133
+ location ~ .php$ {
134
+ try_files $uri @wordpress;
135
+ root /var/www/html;
136
+ fastcgi_pass 127.0.0.1:9000;
137
+ fastcgi_index index.php;
138
+ fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
139
+ include fastcgi_params;
140
+ }
141
+
142
+ location @wordpress {
143
+ fastcgi_index index.php;
144
+ fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
145
+ fastcgi_param SCRIPT_FILENAME /var/www/wordpress/index.php;
146
+ include fastcgi_params;
147
+ }
148
+ ```
149
+
150
+ そうすると、502(Bat gateway)になり、nginxのエラーは以下の通りにエラー表示が変わりました。
151
+ ```
152
+ connect() to unix:/var/run/php-fpm/php-fpm.sock failed (2: No such file or directory)
153
+ ```
154
+
155
+ 下記のサイトと同じパターンだったので、参考にしてやってみましたが、「試したことその3」にある/etc/php-fpm.d/www.confの編集を行っても、
156
+ ```
157
+ connect() to unix:/var/run/php-fpm/php-fpm.sock failed (13: Permission denied)
158
+ ```
159
+ とパーミッションエラーが出てしまい、ここで詰まっている状況です。
160
+
161
+ - 参考サイト
162
+ http://kawatama.net/web/1352

2

追記

2017/09/24 04:49

投稿

ruby_0ct
ruby_0ct

スコア57

title CHANGED
File without changes
body CHANGED
@@ -50,7 +50,7 @@
50
50
  Nginxは始めたばかりで曖昧な部分もあるため、教えていただけると幸いです。
51
51
  よろしくお願いします。
52
52
 
53
- ###追記 2017/09/16 20:42
53
+ ###追記1 2017/09/16 20:42
54
54
  **ay03さん**
55
55
  ご回答ありがとうございます。
56
56
  /wp-admin/install.phpの部分は曖昧でした。勉強になります。
@@ -88,4 +88,38 @@
88
88
  クライアントがアクセスした際のNginxエラーログ
89
89
  ```
90
90
  [error]32126#32126: *10 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: クライアントのIPアドレス, server: ドメイン名, request: "GET /wordpress/wp-admin/install.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "ドメイン名"
91
- ```
91
+ ```
92
+
93
+ ###追記2 2017/09/19 00:00
94
+ ご回答ありがとうございます。
95
+ 「__@wordpress は try_files から参照されるもの__」この部分がイマイチわかっていないのですが、```try_files``` はパーマリンクに対応するための記述で、書き方としては ```location ~ \.php$ {}``` の上部部分に
96
+ ```ここに言語を入力
97
+ try_files $uri $uri/ /index.php?q=$uri&$args;
98
+ ```
99
+
100
+ というふうに記述する認識で問題ないでしょうか。
101
+
102
+ $document_rootに関しての設定は納得です。
103
+
104
+ /etc/nginx/nginx.confはこのように設定しました。
105
+
106
+ ```
107
+ try_files $uri $uri/ /index.php?q=$uri&$args;
108
+
109
+ location ~ \.php$ {
110
+ root /var/www/html;
111
+ fastcgi_pass 127.0.0.1:9000;
112
+ fastcgi_index index.php;
113
+ fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
114
+ include fastcgi_params;
115
+ }
116
+
117
+ location @wordpress {
118
+ fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
119
+ fastcgi_param SCRIPT_FILENAME /var/www/wordpress/index.php;
120
+ include fastcgi_params;
121
+ }
122
+ ```
123
+
124
+ しかし、File not foundで繋がりません。
125
+ nginxのエラーは以前と一緒です。

1

追記

2017/09/18 15:00

投稿

ruby_0ct
ruby_0ct

スコア57

title CHANGED
File without changes
body CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  おそらく、php-fpmの設定が原因だと思うのですが、調べてもサイトによってまちまちでその通り行ってもうまくいきません。
5
5
 
6
- Nginxエラーログ
6
+ クライアントがアクセスした際のNginxエラーログ
7
7
  ```
8
8
  [error] 20450#20450: *1 connect() failed (111: Connection refused) while connecting to upstream, client: クライアントのIPアドレス, server: ドメイン名, request: "GET /wordpress/wp-config.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "ドメイン名"
9
9
  ```
@@ -48,4 +48,44 @@
48
48
  - php:PHP 5.4.16 (cli) (built: Nov 6 2016 00:29:02)
49
49
 
50
50
  Nginxは始めたばかりで曖昧な部分もあるため、教えていただけると幸いです。
51
- よろしくお願いします。
51
+ よろしくお願いします。
52
+
53
+ ###追記 2017/09/16 20:42
54
+ **ay03さん**
55
+ ご回答ありがとうございます。
56
+ /wp-admin/install.phpの部分は曖昧でした。勉強になります。
57
+
58
+ 見直してみると、確かにどの時点のエラーかわかりにくかったですね。すみません。
59
+ クライアントがサイトへアクセスした際に吐かれるエラーです。
60
+
61
+ php5である理由は特にありませんが、インストールした際に5だったのでそのまま使っていました。
62
+ 今回を機会に7へアップデートを行いました!
63
+
64
+ **3nekoさん**
65
+ ご回答ありがとうございます。
66
+ php-fpmは正常に起動しています。phpinfoも正常に表示されます。
67
+ php-fpmのログを確認しましたが、エラーは出ていませんでした。
68
+
69
+ **TaichiYanagiyaさん**
70
+ ご回答ありがとうございます。
71
+ おっしゃる通り、php-fpm側(/etc/php-fpm.d/www.conf)が ``` /var/run/php-fpm/php-fpm.sock``` になっていたので、
72
+ /etc/nginx/nginx.conf のfastcgi_passと合わせ、 ```127.0.0.1:9000;``` に修正しました。
73
+
74
+ しかし、http://ドメイン名/wordpress/wp-admin/install.phpにアクセスすると、404でファイルが見つからないとエラーとなってしまいます。
75
+ ディレクトリを確認するとファイルはあるのですが、ブラウザ上だと見つからないようで、何が原因でしょうか?
76
+
77
+ rootは/var/www/htmlなんですが、上記に書いたfastcgi_paramが間違えていたため、
78
+ location ~ \.php$を
79
+ ```
80
+ fastcgi_param SCRIPT_FILENAME /var/www/html/wordpress$document_root$fastcgi_script_name;
81
+ ```
82
+ に修正し、location @wordpressを
83
+ ```
84
+ fastcgi_param SCRIPT_FILENAME /var/www/html/wordpress/index.php;
85
+ ```
86
+ に修正したのですが、同じエラーでうまくいきませんでした。
87
+
88
+ クライアントがアクセスした際のNginxエラーログ
89
+ ```
90
+ [error]32126#32126: *10 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: クライアントのIPアドレス, server: ドメイン名, request: "GET /wordpress/wp-admin/install.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "ドメイン名"
91
+ ```