Không ai trong số các giải pháp trên làm việc cho tôi. Tìm kiếm một thứ khác, tôi đã tìm ra giải pháp. Bạn phải đặt điểm vào của bạn trong tệp web.config, đây là tệp xml. Kiểm tra tệp ví dụ này (bạn chỉ cần thay thế server.js bằng bất kỳ thứ gì bạn muốn):
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="iisnode" path="server.js" verb="*" modules="iisnode"/>
</handlers>
<rewrite>
<rules>
<rule name="LogFile" patternSyntax="ECMAScript" stopProcessing="true">
<match url="iisnode"/>
</rule>
<rule name="NodeInspector" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^server.js\/debug[\/]?" />
</rule>
<rule name="StaticContent">
<action type="Rewrite" url="public{{REQUEST_URI}}"/>
</rule>
<rule name="DynamicContent">
<conditions>
<add input="{{REQUEST_FILENAME}}" matchType="IsFile" negate="True"/>
</conditions>
<action type="Rewrite" url="server.js"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Nguồn
2013-06-14 10:00:19
Tôi có thể nhầm lẫn, nhưng tôi nghi ngờ rằng chúng không chạy 'node server.js' nhưng thay vào đó bắt đầu' npm 'mặc định là' node server.js', đó là lý do tại sao câu trả lời của chris là đặt main của package.json của bạn. Bạn cũng có thể đặt tập lệnh bắt đầu, xem npmjs.org để biết chi tiết. – generalhenry
Bạn đã bao giờ làm việc này chưa? Tôi đã thử thiết lập một tệp package.json đã định nghĩa lại tệp 'start' nhưng có vẻ như Azure đang tìm kiếm một tệp server.js cụ thể để nó không hoạt động đối với tôi. – martega