ノードAPIの基本的なNginx構成がありますが、私が間違っていることを理解できないようです。Nginxプロキシが動作しない
user www-data;
worker_processes 4;
pid /run/nginx.pid;
events {
worker_connections 768;
multi_accept on;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
server_tokens off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
gzip on;
gzip_disable "msie6";
include /etc/nginx/conf.d/*.conf;
# include /etc/nginx/sites-enabled/*;
}
、その後、私の/etc/nginx/conf.d/の内側に、私はこのようになりますproxy.confを持っている:
server {
listen 80;
server_name [domain_name];
add_header Access-Control-Allow-Origin '*';
location/{
proxy_pass [client_endpoint]
}
location /api {
add_header Allow 'POST, GET, PUT';
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
proxy_pass http://XX.XXX.XXX.XXX:3005;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
私のnginxのファイルは、次のようになります"/"場所からのプロキシは正常に動作しますが、サーバー上の別のポートにプロキシしようとするとタイムアウトになります。そうでないと403エラーが発生します。私はIPアドレスとlocalhostを使ってみました。誰でもここで私を助けることができますか?前もって感謝します。
EDIT:
/
位置のブロックが動作していると/api
場所ではありません。サーバーのポート3005に/api
の場所をプロキシしようとしています。 localhostにプロキシする必要があるのですか、または私のサーバのIP /ポートにプロキシする必要がありますか?両方を試したので、私の構文に問題があると仮定します。私は何が欠けていますか?ありがとう。ここで
(1)どのロケーションブロックが問題を引き起こしていますか? '/'または '/ api'ですか? (2)localhostのポート3005にアクセスしようとしていますか?あなたはあなたの質問が何であるかをもっと明示することができますか?それは外部の読者として私には分かりませんでした。 – 2ps
私は明確にするために私の質問を編集しました。うまくいけば、それは今より意味をなさない。ありがとう。 – gradorade