2016-11-13 52 views
2

我是新来表达和nginx。无法从子文件夹提供expressjs应用程序

我做了一个简单明确的应用程序和配置nginx的:

location /exapi { 
    proxy_pass http://localhost:8010; 
    proxy_http_version 1.1; 
    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection 'upgrade'; 
    proxy_set_header Host $host; 
    proxy_cache_bypass $http_upgrade; 
} 

我expressjs程序是:

var express = require('express') 
var app = express() 

app.get('/', function (req, res) { 
    res.send('Hello World!') 
}) 

app.listen(8010, function() { 
    console.log('Example app listening on port 8010!') 
}) 

当我访问我的VPS VPS_IP/EXAPI,我得到响应Cannot GET /exapi,但是当我使用http://VPS_IP:8010它按预期工作。

如何从VPS_IP/exapi访问我的快捷应用程序?在nginx的

+0

我已经upvoted这个,因为它是一个一般清晰和准确的问题。但是,如果你可以在将来的问题中避免txtspk,那么我们会很感激 - 因为在这里强制性地强制发布帖子,读者很欣赏把'plz'扩展为'please'等额外的最小努力。谢谢! – halfer

+0

试试'location/exapi /'(带有斜线) – robertklep

回答

1

尝试重写:

location ~* ^/exapi { 
    rewrite ^/exapi/(.*) /$1 break; 
    subfilter /exapi /; 

    proxy_set_header Host $host; 
    proxy_redirect off; 
    proxy_pass http://localhost:8010; 
} 
相关问题