今天我第一次安装了NGINX服务器。它工作得很好,但我面临一个小问题,配置服务器与node.js一起工作。
我想在nginx.conf中使用以下逻辑。
问号是可选参数:)可以有0到7个参数。
我很抱歉,如果这个设置方案很容易完成,但是我正在与它斗争近3个小时而且我被困住了。第1步和第2步准备就绪 - 10倍到谷歌。
此致 丹
答案 0 :(得分:5)
你应该看看this answer。从接受的答案开始,我就得到了这样的结论:
upstream node_app {
server localhost:8080;
}
server {
listen 80;
server_name FOO_HOSTNAME_GOES_HERE;
root /the/root/to/foo/document/root;
access_log /var/log/nginx/foo.access.log;
error_page 404 /404.html;
location /remote_data/ {
# Proxy request to node:
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://node_app;
proxy_redirect off;
access_log /var/log/nginx/foo_nodeapp.access.log;
}
location / {
try_files $uri $uri/index.html 404;
}
}
虽然未经测试。
答案 1 :(得分:2)
我已成功使用以下内容:
server {
root /var/www;
listen 80;
server_name _;
location ~* /remote_data {
# Proxy request to node:
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://node_app;
proxy_redirect off;
break;
}
location / {
index index.html index.htm;
location ~ \.(js|css|png|jpg|jpeg|gif|ico|html|less)$ {
expires max;
break;
}
rewrite ^/(.*)?$ /index.html?q=$1 last;
}
# serve static files directly
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico)$ {
access_log off;
expires 30d;
}
}