
рд▓рдЧрднрдЧ рдбреЗрдврд╝ рд╕рд╛рд▓ рдкрд╣рд▓реЗ, рддреАрди рдкреГрд╖реНрдареЛрдВ рдФрд░ рдПрдХ рджрд░реНрдЬрди рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рд╕реНрдереИрддрд┐рдХ рд╕рд╛рдЗрдЯ рдХреА рдореЗрдЬрдмрд╛рдиреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рдЙрд╕ рд╕рдордп, MSDN рд╕рджрд╕реНрдпрддрд╛ рд╕рдХреНрд░рд┐рдп рдереА рдФрд░ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рди рдерд╛ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдПрдХ WebRole рдмрдирд╛рдирд╛, рдЖрдБрдХрдбрд╝реЛрдВ рдХреЛ рд╡рд╣рд╛рдБ рд░рдЦрдирд╛ рдФрд░ Visual Studio рдХреА рдорд╛рдирдХ рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХрд░рдирд╛ред рдПрдХ рд╡рд░реНрд╖ рдмреАрдд рдЧрдпрд╛, рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдИ, рдПрдЬрд╝реНрдпреЛрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рднреБрдЧрддрд╛рди рдХрд╛ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдкреНрд░рддрд┐ рдорд╛рд╣ 5000 рд░реВрдмрд▓ рдХреА рд░рд╛рд╢рд┐ред рдореБрдЭреЗ рдпрд╣ рдкреНрд░рддреАрдд рд╣реБрдЖ рдХрд┐ рдпрд╣ рддреАрди-рдкреГрд╖реНрда рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣рд▓рдЪрд▓ рдереА рдФрд░ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреА рддрд▓рд╛рд╢ рд╢реБрд░реВ рд╣реБрдИред рдорд╛рдирджрдВрдб: рдирд┐: рд╢реБрд▓реНрдХ, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рдФрд░ рд╕рд╛рдЗрдЯ рдХреЛ рдХреЗрд╡рд▓ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЯреНрд╡рд┐рдХреНрд╕ рдХреЗ рд╣реИред
рд╕рдмрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╡рд┐рдХрд▓реНрдк рдЕрдореЗрдЬрд╝реЕрди рдПрд╕ 3 рд▓рдЧ рд░рд╣рд╛ рдерд╛ред рдареЛрдХрд░ рдХреЛ AWS рдореЗрдВ рдореБрдлреНрдд рд╕рджрд╕реНрдпрддрд╛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдереАред рд▓рдЧрднрдЧ рдПрдХ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдлрд╝реЛрди рд╕реЗ рд╕рддреНрдпрд╛рдкрди рдХреЛрдб рдХреЛ рдЕрд╕рдлрд▓ рд░реВрдк рд╕реЗ рджрд░реНрдЬ рдХрд┐рдпрд╛ред рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдмрд╕ рдХреЙрд▓ рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХреЛрдб рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рд╣реЗрд░реЛрдХреВ рд╕реЗрд╡рд╛ рдиреЗ рдореЗрд░реА рдЖрдВрдЦ рдХреЛ рдкрдХрдбрд╝ рд▓рд┐рдпрд╛, рдФрд░ рдкрдВрдЬреАрдХрд░рдг рдореЗрдВ рдЖрд╕рд╛рдиреА (AWS рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХрд░рдг рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреЗ рдПрдХ рдорд╣реАрдиреЗ рдмрд╛рдж) рдиреЗ рдореБрдЭреЗ рдмрд╣реБрдд рд░рд┐рд╢реНрд╡рдд рджреАред
рдЪреВрдВрдХрд┐ рд╕реЗрд╡рд╛ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдереИрддрд┐рдХ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдереАрдВред рд▓рдЧрднрдЧ рд╕рднреА рдХреЛ рд░реВрдмреА рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЙрджрд╛рд╣рд░рдг:
github.com/jamiew/heroku-static-site рдФрд░
devcenter.heroku.com/articles/static-sites-ruby ред рдЗрди рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рд╣реБрдИрдВ: рдореБрдЭреЗ рд░реВрдмреА рдХрд╛ рдмрд╣реБрдд рдХрдо рдЬреНрдЮрд╛рди рд╣реИ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рдЪреАрдЬ рдХреЗ рд▓рд┐рдП, рдореМрдЬреВрджрд╛ рд╕рд╛рдЗрдЯ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдХрд╛рдлреА рд╣рдж рддрдХ рдареАрдХ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред
рдЕрдЧрд▓рд╛ рдХрджрдо Django рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдерд╛ред рд╕рд╛рдЗрдЯ рд╕рдВрд░рдЪрдирд╛ рдЕрдм рдирд╣реАрдВ рдмрджрд▓реА рдЬрд╛ рд╕рдХрддреА рдереА, рд▓реЗрдХрд┐рди рдорд┐рдирд╕ рддреБрд░рдВрдд рджрд┐рдЦрд╛рдИ рджрд┐рдП - рдмрд╣реБрдд рд╕рд╛рд░реА рдлрд╛рдЗрд▓реЗрдВ рдЬреЛ рд╕реАрдзреЗ рд╕рд╛рдЗрдЯ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд░рд┐рд▓реАрдЬ рдореЗрдВ рд▓реЙрдиреНрдЪ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, Django рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╕рд░рд▓ рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛, рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕рдиреЗ Django рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдХрдо рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдкрд╛рдпрдерди рдореЗрдВ рд╕рдордЭрддрд╛ рд╣реИред
Django рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдЕрдЬреНрдЮрд╛рдд рдХрд╛рд░рдгреЛрдВ рд╕реЗ, рдПрдХ рджрд┐рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдпрд╛ рдЧрдпрд╛, / рд╕реЗ indexirect рдХреЛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдлрд┐рд░ рдПрдХ рд╡реНрдпрдХреНрддрд┐ рдиреЗ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдкреВрдЫрдиреЗ рдХреЗ рдмрд╛рдж рдкреВрдЫрд╛, тАЬрдЖрдкрдХреЛ Django рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? Node.js. рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рдЖрд╕рд╛рди рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдЗрд╕ рд╕рд░реНрд╡рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрднреА рдирд╣реАрдВ рдХрд┐рдпрд╛ред
@D_bud рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд╕реНрдерд┐рд░ рд╕рд╛рдЗрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдореЗрдВ рдХреЗрд╡рд▓ 20 рдорд┐рдирдЯ (рддреИрдирд╛рддреА рдХреЗ рд╕рд╛рде) рд▓рдЧреЗред рд╕рднреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛрдб:
Web.js
var express = require('express'); var app = express(); var path = require('path'); app.use(express.static(path.join(process.cwd(), 'source'))); console.log(process.env.PORT || 5000); app.listen(process.env.PORT || 5000);
package.json
{ "name": "node-example", "version": "0.0.1", "dependencies": { "express": "3.1.x" }, "engines": { "node": "0.10.x", "npm": "1.2.x" } }
рдореЗрд░реЗ рд╕рднреА рд╕реНрдерд┐рд░ рд╕рд╛рдЗрдЯ рдХреЛ рд╕реНрд░реЛрдд рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦрдирд╛ рдФрд░ рдЪрд┐рддреНрд░реЛрдВ рдХреЗ рдХреБрдЫ рдкреБрд░рд╛рдиреЗ рдЯреВрдЯреЗ рд╣реБрдП рд▓рд┐рдВрдХ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред Google рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╕рд╛рджрдЧреА рдореЗрдВ рдХреБрдЫ рднреА рд╕рдорд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕ рд▓реЗрдЦ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ + рдФрд░
рдЬреАрдердм рдкрд░ рдПрдХ
рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рдХреАред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рдЬреИрд╕реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рдЬрд▓реНрджреА рдФрд░ рдЬрд▓реНрджреА рд╕реЗ рд╕реНрдЯреИрдЯрд┐рдХреНрд╕ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
рдкреБрдирд╢реНрдЪ: рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╕реНрдЯреЗрдЯрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдиреЛрдб.рдЬреЗрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рдЗрд╕реЗ рдЬрд▓реНрджреА рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХреЗрдВрдЧреЗред рдорд╢реАрди рдкрд░ рд╕рд╛рдЗрдЯ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдиреЛрдб рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рдЬреЗ рдПрд╕ рдФрд░ рд░реВрдЯ рдлреЛрд▓реНрдбрд░ рдореЗрдВ рджреЛ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
npm install node web.js