2016-06-13 7 views
0

Azure 웹 사이트에 prerender.io 렌더링 서버 https://github.com/prerender/prerender.git을 설정하는 동안 문제가 있습니다.prerender.io node.js azure의 사전 렌더링 서버

VS2015에 빈 Node.js Azure 프로젝트를 만들었고 node.js 서버가 올바르게 시작되어 내용을 로컬로 잘 렌더링합니다. 내가 요청 및 클러스터링 메커니즘에 문제가 의심 만 할 수있는 오류에서

Application has thrown an uncaught exception and is terminated: 
Error: write ENOTSUP 
    at exports._errnoException (util.js:874:11) 
    at ChildProcess.target._send (internal/child_process.js:606:18) 
    at ChildProcess.target.send (internal/child_process.js:507:12) 
    at sendHelper (cluster.js:699:8) 
    at send (cluster.js:501:5) 
    at cluster.js:477:7 
    at SharedHandle.add (cluster.js:82:3) 
    at queryServer (cluster.js:469:12) 
    at Worker.onmessage (cluster.js:425:7) 
    at ChildProcess.<anonymous> (cluster.js:713:8) 

: 나는 다음과 같은되는 내부 서버 오류가 발생하고 푸른에 배포 할 때

문제

입니다. prerender.io에게 무슨 일이 일어나고 있는지에 대한 통찰력이 있는지를 이메일로 보냈습니다. 또한 웹에서 높거나 낮은 항목을 검색했지만 참조로 사용할 비슷한 문제는없는 것 같습니다.

모든 node.js 프로젝트 기본값이 유지됩니다. 나는 prerender.io node.js 코드를 vs2015 프로젝트로 가져 왔습니다. 제가 지적했듯이, 그것은 지역에서 일하고 있습니다.

+0

프리렌더 패키지/미들웨어는 백엔드에있는 서버 중 하나와 통신합니까? 방화벽이나 연결 문제가있을 수 있습니다. 나는 푸른 웹 응용 프로그램에서이 사이트를 게시하고있는 것으로 추측합니다. – Aravind

+0

IISNode 작성자가 여기에 언급 한대로 IISNode에서 클러스터를 지원하지 않는다고 결정했습니다. 다음은 문제에 대한 GitHub 대화입니다. https://github.com/tjanczuk/iisnode/issues/195 –

답변

1

필자의 테스트 결과, 필자는 로컬 및 Azure 웹 사이트에서 prerender.IO를 실행할 수있는 것으로 나타났습니다.

내가 패키지를 설치하고 다음과 같은 server.js 코드 사용 : 다음

var prerender = require('./lib'); 

var server = prerender({ 
    workers: process.env.PRERENDER_NUM_WORKERS, 
    iterations: process.env.PRERENDER_NUM_ITERATIONS 
}); 


server.use(prerender.sendPrerenderHeader()); 
// server.use(prerender.basicAuth()); 
// server.use(prerender.whitelist()); 
server.use(prerender.blacklist()); 
// server.use(prerender.logger()); 
server.use(prerender.removeScriptTags()); 
server.use(prerender.httpHeaders()); 
// server.use(prerender.inMemoryHtmlCache()); 
// server.use(prerender.s3HtmlCache()); 

server.start() 

을, 나는 푸른 웹 응용 프로그램 서비스에이 프로젝트를 배포했습니다. 이 이미지와 같이 powershell을 사용하여 kudu 패널의 server.js를 실행했습니다. enter image description here

다른 버전을 사용 했습니까? 나는 V4.2.3 버전의 node.js를 사용했다.

+0

안녕하세요, 미들웨어 또는 렌더링 서버를 실행 했습니까? 렌더 서버를 실행 하려다가 노드 6.2에있었습니다. 우리가 오픈 소스 프로젝트 수정을 시작할 시간이 없기 때문에 VM 프로젝트를 진행하기 위해 프로젝트를 진행하기위한 마감 시간이 부족했습니다. 그래도 흥미로운 코멘트. –

1

미들웨어 또는 렌더링 서버를 실행 했습니까? 렌더 서버를 실행 하려다가 노드 6.2에있었습니다. 우리가 VM 방식으로 진행할 수 있도록 프로젝트를 진행할 수있는 마감 기한이 만료되었습니다.

이 문제를 제기 한 게시물에 감사드립니다. 현재 프리 렌더가 Azure 웹 응용 프로그램에서 지원되지 않음을 확인드립니다. 프리렌더는 Azure 웹 응용 프로그램이 명명 된 파이프 연결을 사용하여 iis를 node.exe에 연결하는 동안 명명 된 파이프 연결을 지원하지 않는 클러스터 모듈을 사용합니다. 해결 방법과 해결 방법을 알아 내면이 문제를 계속 조사하고이 스레드를 계속 업데이트합니다. 추가 우려 사항이 있으면 언제든지 알려 주시기 바랍니다.