2017-03-11 1 views
1

AWS Linux 시스템에서 내 노드 앱을 호스팅했습니다. 내 코드는 openshift에서 완벽하게 작동합니다. node_modules이 내 각도에 액세스 할 수 있도록 고정되어 있습니다.하지만 AWS 호스트에서는 그렇지 않습니다. .AWS에서 node_modules을 정적으로 제공 할 수 없습니다.

var app = express(); 
app.use('/bower_components/', express.static(__dirname + '/node_modules/')); 
var server = app.listen(app.get('port'), app.get('ipaddress'), function() { 
// server.maxConnections = 2; 
    console.log('Express server listening on port ' + server.address().port); 
}); 

내 코드가 뭐니?

+0

어떤 오류가 표시됩니까? aws에 패키지를 설치 했습니까? –

+0

내 instance.without 패키지 서버에 로그온 할 수있는 권한이 있습니다. 서버가 시작되지 않습니다. 모든 불일치가 설치되고 노드 서버가 완벽하게 시작됩니다. 문제는 정적 파일 만 제공합니다. –

답변

0

오랫동안 재검색을 마친 후에 나는 nginx에서 nodejs로 reqest를 전송해야한다는 해결책을 발견했다. nginx는 노드별로 내 보낸대로 제공 할 것이다.

나는

server { 
listen 80; 

server_name mysite.com; 

location/{ 
    proxy_pass http://APP_PRIVATE_IP_ADDRESS:8080; 
    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; 
    } 
} 

희망이 도움이 문제를 가진 어떤 사람 /etc/nginx/sites-available/my-site에 내 사이트 설정을 추가했습니다.

관련 문제